我需要在表单中验证一组名称,手机号码字段。为方便起见,我在服务器端脚本中使用数组表示法命名字段(即带方括号)。 此外,下面相同的html会重复多次,具体取决于需要多少记录。
<table width="100%" border="0">
<tr><td class="b_name"><label>Name <sup>*</sup></label></td><td class="b_mobile"><label>Mobile <sup>*</sup></label></td><td class="removetext"><a href="javascript:void(0);" onclick="removebroadcast(this);" id="remove_<?php echo $cnt;?>">Remove</a></td></tr>
<tr><td class="b_name" id="name_<?php echo $cnt;?>"><input type="text" value="" name="broadcast_name[]" class="broadcast_name" /></td><td class="b_mobile" id="mobile_<?php echo $cnt;?>"><input type="text" value="" name="broadcast_mobile[]" class="broadcast_num" /></td><td id="message_<?php echo $cnt;?>"> </td></tr>
</table>
到目前为止,在规则/消息部分,我提出了:
'broadcast_name[]':{required:function(element){
return $(element).parent().next().children('input').val()!='';
}
},
'broadcast_mobile[]':{required:function(element){
return $(element).parent().prev().children('input').val()!='';
}
},
但是,这仅适用于第一组名称/移动字段。我也尝试了一些其他的技巧(例如,使用$ .each类型验证,使用自定义规则函数等),但它们似乎都没有工作。我在这里做错了吗?请帮忙! :(
答案 0 :(得分:-1)
您可能需要查看手机字段:http://digitalbush.com/projects/masked-input-plugin/
你不能做像
这样的事情$('form').submit(function(e){
var errors = false;
$(this).find('input').each(function(){
if($(this).val() === ''){
errors = true;
}
});
if(errors){
e.preventDefault();
alert('errors exist');
}
});