使用Jquery判断,input中同列不同行数据重复的两种方法

本文介绍了两种检查表格数据中是否存在重复的方法:一是利用jQuery的$.unique()函数对指定列的数据进行去重比较;二是通过JavaScript遍历输入框,检查VIN码是否重复,并给出提示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:将一列的内容放到一个数组中,通过$.unique()函数对数组进行去重,根据去重前后数组的长度来判断是否存在数据重复。

function hasRepeat(objId,columnIndex){
     var arr = [];
     $("#"+objId+" tbody tr").each(function(){
        arr.push( $("td:eq("+columnIndex+")",this).text() );
     });
     if( arr.length==$.unique( arr ).length ){
        return false;
     }else{
        return true;
     }
}
 
//调用
alert( hasRepeat(tableID,列索引)==1?"有重复":"无重复" );

 ps:$.unique()这个函数1.4版本后这样使用是可以的。

 

二:使用选择器选择除了本身之外的input,一一遍历、对比值是否相等。

在每个input上都有个焦点事件queryCar:

<input type="text" name="allocationCar.vin" value="" onblur="queryCar(this)" class="form-control">

JavaScript方法: 

function queryCar(obj) {
    $("input[name$='vin']").not($(obj)).each(function(i,o){
        if ($(obj).val() != "" && $(obj).val() == $(o).val()){
            layer.alert("不可重复!");
            $(obj).val("");
            return;
        }
    });
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值