动态忽略HTML5验证中的字段

时间:2014-04-18 14:54:04

标签: javascript html5 validation

我有一个带有2个提交按钮的表单。表单有几个字段,其中一个是字段“X”,带有几个HTML5验证属性(例如:required, type="email")。当我通过按钮1提交时,我想忽略验证中的“X”。当我通过按钮2提交时,一切都应该正常处理。

此外,当按钮1提交时,表单将提交到新窗口。因此,有可能:按钮1提交 - >输入字段“X” - >通过按钮2 在同一窗口中提交。因此,当按钮1提交时禁用“X”不是解决方案。

2 个答案:

答案 0 :(得分:0)

当您通过submit1提交时,禁用“X”。 向submit1请求添加成功和失败回调,并在这些回调中启用“X”。 这应该可以解决你的问题。

答案 1 :(得分:0)

在点击提交#1按钮时,您可以使用纯JavaScript或jQuery删除按钮所需的属性:

subOne.addEventListener('click', function (e) {
    e.preventDefault();

    X.removeAttribute('required');
});

http://jsfiddle.net/Volter9/5pxRX/4/