我对插件 jQueryValidate 有一点问题。
这真的很简单:我只想用这个插件检查我的表单,并在值错误或字段为空时显示一个小工具提示。我为此使用 qTip2,效果很好!
但问题是在表单的某个地方,我有一个动态数量的字段,用户必须在其中输入验证码。我想检查输入的代码是否存在于我正在使用的数据库中,如果不存在,则显示一个小工具提示。
所以,我做到了,但我的问题是如何为这个未定义数量的字段制定“动态”规则,并且只使用一个 PHP 文件来检查代码是否存在于数据库中?
这是我的标准字段表单:
<form method="POST" action="" id="inscription-form" name="inscription-form" enctype="multipart/form-data">
<p><input type="text" name="v_nom" id="v_nom" class="defaultInvalid" size=30 tabindex="1" value="nom" /><br />
<input type="text" name="v_prenom" id="v_prenom" class="defaultInvalid" size=30 tabindex="2" value="prénom"/><br />
<input type="text" name="v_adresse" id="v_adresse" class="defaultInvalid" size=30 tabindex="3" value="adresse"/><br />
[…]
我有一个未定义数量的字段:
<input type="text" class="ticket-field" name="v_ticket_1" id="v_ticket_1" size=30 tabindex="9" value="ticket"/>
<input type="text" class="ticket-field" name="v_ticket_2" id="v_ticket_2" size=30 tabindex="10" value="ticket"/>
[…]
这是我的 JS
myForm.validate({
errorClass: "errormessage",
onkeyup: false,
errorClass: 'error',
validClass: 'valid',
rules: {
v_nom: { required: true, minlength: 2 },
v_prenom: { required: true, minlength: 2 },
[…]
v_ticket_1: {
remote: "includes/deindeal_check_tickets.php",
async: false
}
},
messages: {
v_nom: { defaultInvalid: v_name_msg },
v_prenom: { defaultInvalid: v_last_name_msg },
[…]
v_ticket_1 : { remote: "Coupon invalide"}
},
success: function(error) {
setTimeout(function() {
myForm.find('.valid').qtip('destroy');
}, 1);
},
submitHandler: function(form) {
form.submit();
},
errorPlacement: function(error, element) {...
等等...
现在,我的 PHP 文件只返回 true 或 false。这只是一个测试。
那么,我怎样才能为“ticket-field”类的所有字段只定义一个规则,并只使用另一个文件来检查值呢?不幸的是,我在任何地方都找不到好的解决方案。欢迎任何建议!
谢谢!;)