如何禁用某些提交按钮的表单验证?

时间:2015-08-26 07:29:05

标签: javascript jquery forms jsp

在我的jsp表单页面中,我有两个提交按钮" Save"和"取消"。当我点击两个按钮时,它会验证表格。我试着把关键字" formnovalidate"取消按钮。但它不起作用。

我在这里提到了我的按钮代码:

<form id = "myForm" method="POST" onsubmit="return validateForm()" >
..........
<tr >
<td class="td_left"><input type="submit" value="save" onclick="form.action='${pageContext.servletContext.contextPath}/insert'"/></td>
<td class="td_right"><input type="submit" value="Cancel" onclick="form.action='${pageContext.servletContext.contextPath}/home'" formnovalidate  /></td>
</tr>
................
</form>

验证

function validateForm() {
var x = document.forms["myForm"]["spcrId"].value;
if (x == null || x == "") {
    alert("SPCR ID must be filled out");
    return false;
}
}

禁用&#34;取消&#34;的表单验证的方法是什么?按钮?

5 个答案:

答案 0 :(得分:1)

尝试一下:

<input type="submit" value="Cancel" onclick="this.form.setAttribute('novalidate', 'novalidate'); form.action='${pageContext.servletContext.contextPath}/home'"  />

通过在click事件上设置表单的novalidate属性,您可以仅绕过该按钮的验证。

答案 1 :(得分:0)

而不是type =“submit”你必须使用

 <input type="button" value="Cancel" />

或者您可以使用

<button type="cancel" onclick="window.location='http://your.com';return
false;">Cancel</button>

答案 2 :(得分:0)

试试这个

var myFormVar = document.myForm.FieldName.value;
if ((myFormVar == "") ) {
   document.myForm.FieldName.value = ''; 
   document.myForm.FieldName.focus();
   alert ("alert here");
   return;
}

答案 3 :(得分:0)

我认为问题是因为您在表单的onsubmit属性上放置了一个验证调用。因此,在没有该onsubmit属性的情况下,类似这样的方法应该起作用:

<button name="action" class="btn btn-secondary" type="submit" value="Previous" formnovalidate="formnovalidate">Previous</button>

答案 4 :(得分:0)

您可以使用:-

  `<button type="button"></button>`