jquery 校验添加多行数据
思路:先取得所有符合条件的子元素,再根据子元素得到父节元素。
var tr = getElementDirectParent(obj,'tr');
var billno=tr.find('#billno').val();
var flag=0;//当出现重复票据号时会加1,
jQuery('#tab tbody > tr input[name*=billno] ' ).each(function(i){
var tr=getElementDirectParent(jQuery(this),'tr');
var bill=tr.find('#billno').val();
var bankid=tr.find('#bank').val();
if(billno.trim()==bill.trim()&&bank==bankid){
flag+=1;
if(flag>1){
alert("当前行里面的票据号和银行与第"+i+"行的票据号和银行相同,请重新填写!");
this.value="";
}
}
});
jQuery('#tab tbody > tr input[name*=billno] ' )是 id为tab 标签 中的 tbody 中的直接子节点 tr 中,input中name中包含billno的input。
jQuery(this):是代表的是当前循环的一个input对象
getElementDirectParent:公司自己封装的方法,根据子对象得到父对象。