jquery验证FIELDS的相互依赖的PAIR

时间:2011-11-18 08:15:40

标签: jquery validation

我需要在表单中验证一组名称,手机号码字段。为方便起见,我在服务器端脚本中使用数组表示法命名字段(即带方括号)。 此外,下面相同的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;?>">&nbsp;</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类型验证,使用自定义规则函数等),但它们似乎都没有工作。我在这里做错了吗?请帮忙! :(

1 个答案:

答案 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');
    }
});