仅在单击特定按钮时提交

时间:2013-02-25 21:43:42

标签: javascript html validation

我的表格如下:

<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个字段。前三个“FirstName”,“Title”,“LastName”是表单提交所需的唯一三个。

表单有三个按钮。一个用于删除,创建和修改。

单击“创建”时,必须验证三个字段,然后提交表单。 单击“删除”时,只需验证一个特定字段,然后提交。

使用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

1 个答案:

答案 0 :(得分:0)

当您的表单ID为“联系人”时,您有document.getElementById(Form)。因此,将其更改为document.getElementById("Contact")