簡體   English   中英

僅在單擊特定按鈕后才提交

[英]Submit Only if a specific button is clicked

我有一個像這樣的表格:

<form id='Contact' action="<?php echo $_SERVER['PHP_SELF']; ?>" method='post' enctype="multipart/form-data" accept-charset='UTF-8' style='background-color:#7FFF00; width: 781px'>

以這種形式,我有15個字段。 前三個“名字”,“標題”,“姓氏”是提交表單所需的僅有三個。

該表單具有三個按鈕。 一種用於刪除,創建和修改。

單擊創建時,它必須驗證三個字段,然后提交表單。 單擊刪除后,只需驗證一個特定字段,然后提交即可。

使用Javascript:

<script type="text/javascript">
<!--
function validateForm(Form, FieldName)
{
    var Form = document.getElementById(Form);
    var Elements = Form.elements;
    var Field = Elements[FieldName].value;

    if (Field == null || Field == "")
    {
        alert(FieldName + " must be filled out!");
        return false;
    }
    return true;
}

function SubmitForm(Form, DoSubmit)
{
    if (DoSubmit)
    {
        document.getElementById(Form).submit();
    }
}
-->
</script>

我的CreateButton:

<input type='button' name='ContactInfo' value='Create' onClick="SubmitForm('Contact', validateForm('Contact', 'Title') && validateForm('Contact', 'FirstName') && validateForm('Contact', 'LastName'));" />

我的刪除按鈕:

<input type='submit' name='ContactInfo' value='Delete' />

為什么創建按鈕不起作用? 它驗證必填字段,但不提交/發布:S

try the following.


<input type='submit' name='ContactInfo' value='Create' onClick="SubmitForm('Contact', validateForm('Contact', 'Title') && validateForm('Contact', 'FirstName') && validateForm('Contact', 'LastName'));return false;" />

更改要提交的類型,並在最后添加return false。

或將其添加到您的表單元素:

onsubmit="return validateForm(this);"

並測試刪除等。如果this.value ===“ Delete”等...

document.getElementById(Form)的ID為“聯系人”時,您具有document.getElementById(Form) 因此,將其更改為document.getElementById("Contact")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM