我在验证表单时遇到一些问题。 我想做的是检查某些输入字段是否相等,如果为真则停止表单输入。 像这样的事情:
<form id="myForm">
<input type="text" id="id1" />
<input type="text" id="id2" />
<input type="text" id="id3" />
<br/>
<input type="text" id="id4" />
<input type="text" id="id5" />
<input type="text" id="id6" />
...some other inputs (id7, id8, id9 - id10, id11, id12 - ...)
<p id="error" hidden="hidden">
Error
</p>
<input id="submit" type="submit" value="submit" />
</form>
如果id1、id2、id3与id4、id5、id6的值相同(顺序相同),则必须停止表单输入。 id1、id2 和 id3 可以具有相同的值,并且 Id4 可以具有与 id1 相同的值,依此类推,但这三个一起(id1、id2、id3)不能具有相同的 id4、id5、id6 值。 例如错误是:
- id1:一
- id2:二
- id3:三
- id4:一
- id5:两个
- id6:三
所有其他情况都很好。
我正在尝试这样的事情:http://jsfiddle.net/g2kBm/283/但它不起作用。
最佳答案
http://jsfiddle.net/g2kBm/284/
您不需要 on模糊事件,因为您正在检查提交。另外,您需要检查是否 #1 == #4 AND #2 == #5 AND #3 == #6:
$('#myForm').submit(function (event) {
var errors = false;
if ($('#id1').val() == $('#id4').val() &&
$('#id2').val() == $('#id5').val() &&
$('#id3').val() == $('#id6').val()) {
$("#error").show();
errors = true;
} else {
errors = false;
$("#error").hide();
}
if (error) {
event.preventDefault();
}
});
关于javascript - 表单验证某些输入必须彼此不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41259530/