[英]jQuery Validation Not Working Properly
我正在尝试验证四个不同的领域。 后两个具有正确的验证行为,但前两个不起作用(仅应要求)。 如果我按提交而不输入任何内容,则仅最后两个字段显示错误。
这是有问题的jQuery:
$("#advertisePost").validate({
rules: {
advRetailerName: {
required: true
},
advName: {
required: true
},
advPhone: {
required: true,
phoneUS: true
},
advEmail: {
required: true,
email: true
}
},
messages:{
advRetailerName: {
required: "This is required."
},
advName: {
required: "This is required."
},
advPhone: {
required: "This is required.",
phoneUS: "This is an invalid phone number."
},
advEmail: {
required: "This is required",
email: "This is an invalid email"
}
}
});
这是实际的形式本身:
<form action="php/advertisePost.php" method="POST" id="advertisePost">
<table>
<tr>
<td>Retailer Name</td><td><input type="text" id="advRetailerName" name="advRetailerName" class="required"/><br/><label for="advRetailerName" class="error" generated="true"></label></td>
</tr>
<tr>
<td>Your Name</td><td><input type="text" id="advName" name="advName" class="required"/><br/><label for="advName" class="error" generated="true"></label></td>
</tr>
<tr>
<td>Phone Number</td><td><input type="text" id="advPhone" name="advPhone" class="required"/><br/><label for="advPhone" class="error" generated="true"></label></td>
</tr>
<tr>
<td>Email Address</td><td><input type="text" id="advEmail" name="advEmail" class="required"/><br/><label for="advEmail" class="error" generated="true"></label></td>
</tr>
</table>
<input type="button" value="Submit" id="advSubmit"/>
</form>
我什至尝试将必需的类添加到每个字段。 我知道这也不是消息处理问题。 前两个字段根本不遵循验证规则。 有什么帮助吗?
这样尝试
$.validator.addClassRules({
advPhone: {
required: true,
phoneUS: true
},
advEmail: {
required: true,
email: true
}
});
$("#advertisePost").validate();
然后将所需的类添加到前两个
或者,您可以只执行验证行,并向最后两个类别添加电子邮件和必填类
如果您只想验证前两个字段是必需的,则可以在其各自的输入字段中设置class =“ required”,并在jquery中设置advRetailerName:“ required”。 这是用于验证的文档: http : //docs.jquery.com/Plugins/Validation
似乎是验证插件中的错误。 当您仅请求“必需”参数时,可能是不理解复杂样式的规则分配吗? 您是否尝试过以下简单方法:
rules: {
advRetailerName: "required",
(...)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.