我试图在点击提交时验证表单。有许多需要验证的输入都被分配了类.ipv4val。我遇到的问题是,我似乎无法将“坏”类添加到验证失败的单个输入元素中?
$("form").submit(function() {
var REGEX = /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/;
if (REGEX.test($(".ipv4val").val())) {
return true;
}
else {
$(this).addClass("bad");
return false;
}
有什么想法吗?
答案 0 :(得分:3)
请注意您使用:$(this).addClass("bad")
$(this)
是执行时的form
元素。尝试使用输入的元素ID。
答案 1 :(得分:3)
您是否考虑过jquery.validate plugin,而不是自己进行验证?
答案 2 :(得分:2)
以这种方式尝试:
$("form").submit(function() {
var REGEX = /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/;
var ok=true;
$(".ipv4val").each(function(){
if (!REGEX.test($(this).val())) {
$(this).addClass("bad");
ok = false;
}
});
return ok;
};