遍历 Input检测是否有重复的值

在项目中需要遍历某个Table中的Input输入是否有重复的值,为此基于Jquery写了两种实现方式(关键在于取值方式):

方法1:

function CheckGoodsNo() {
    var ishidegoodsno = $(‘#cbxAutoCreate‘).attr(‘checked‘);
    if (ishidegoodsno) {//自动生成货品编号,跳过货品编号检测
        return true;
    }
    var ary = new Array()
    try {
        $("input[name=‘code‘]").each(function () {
            if ($(this).val() == "") {
                $(this).focus();
                alert(‘货品编号不能为空‘);
                throw ‘货品编号不能为空‘;
            }
            else {
                ary.push($(this).val());
            }
        });
        $("input[name=‘code‘]").each(function () {
            var val = $(this).val();
            var j = 0;
            for (var i = 0; i < ary.length; i++) {
                if (ary[i] == val) {
                    j++;
                    if (j > 1) {
                        j = 0;
                        $(this).focus();
                        alert(‘货品编号不能重复‘);
                        throw ‘货品编号不能重复‘;
                    }
                }
            }
        })
    }
    catch (e) {
        return false;
    }
    return true;
}

方法2:

//获取商品编码
var NoRepeat_Error = "";
function NoRepeat() {
    var is_ok = true;
    var GNOS = "";
    $("#sell-body").find(‘tr‘).each(function() {
        //console.log($(this).html());
    //console.log($("input", this).val());

        $(this).find(‘td‘).each(function() {
            //console.log($(this).html());
            //console.log($("input", this).attr("name"));
            if ($("input", this).attr("name") == "code") {
                //console.log($("input", this).val());
                if ($("input", this).val().indexOf("#") != -1) {
                    alert("货品编号不允许有特殊符号!");
                    is_ok = false;
                    return false;
                } else {
                    GNOS += $("input", this).val() + ",";
                }
            }
        })

    })
    if (is_ok) {
        is_ok= VeriGoodsRepeat(GNOS);
    }
    return is_ok;
}

//
function VeriGoodsRepeat(gnos) {
    var is_Ok = true;
    NoRepeat_Error = "";
    var g_arrary = gnos.split(‘,‘);
    for (i = 0; i < g_arrary.length; i++) {
        var i_Part = g_arrary[i];
        var i_Count = 0;
        if (i_Part != null && i_Part != "") {
            for (y = 0; y < g_arrary.length; y++) {
                if (i_Part == g_arrary[y]) {
                    i_Count++;
                }
            }
            if (i_Count > 1) {
                //alert(i_Part + ":不可重复!");
                NoRepeat_Error = "货品编号:["+ i_Part + "]:不可重复!";
                is_Ok = false;
            }
        }

    }
    return is_Ok;
}
时间: 2024-10-25 05:13:40

遍历 Input检测是否有重复的值的相关文章

php判断检测一个数组里有没有重复的值

php判断检测一个数组里有没有重复的值 php里有一个处理数组重复值得函数array_unique,我们的思路就是用这个函数来实现的. if (count($array) != count(array_unique($array))) {       echo '该数组有重复值';   }

javascript如何去掉数组中重复的值

javascript如何去掉数组中重复的值: 数组是用来组织数据的,有时候里面的数据是重复的,下面就介绍一下如何从数组中删除重复的内容. 代码实例如下: var theArray=[1,2,3,4,5,6,4,3,10]; function unique(data){ var data=data||[]; var a={}; for(var i=0;i<data.length;i++){ var v=data[i]; if(typeof(a[v])=='undefined'){ a[v]=1;

什么是MTU,如何检测和设置路由器MTU值

最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位).最大传输单元这个参数通常与通信接口有关(网络接口卡.串口等).如何检测网关的MTU在本机打开dos窗口,执行: ping -f -l 1472 192.168.0.1 其中192.168.0.1是网关IP地址,1472是数据包的长度.请注意,上面的参数是“-l”(小写的L),而不是“-1”. 如果能ping通,表示数据包不需要拆包,可以通过网关发送出去.

SQL中删除同一字段中重复的值

/////////////////////目地:ZDJZ_DIS中 name字段有重复的值,删除重复的值 DELETE * FROM ZDJZ_DIS WHERE NAME IN (select NAME from ZDJZ_DIS group by NAME having count(NAME) >1); 上面的做法会删除掉所有的相同的值,包括你想要的,只要重复就删除 DELETE * FROM ZDJZ_DIS WHERE ID in (select min(ID) from ZDJZ_DI

SQL查询多条不重复记录值简要解析【转载】

转载http://hi.baidu.com/my_favourate/item/3716b0cbe125f312505058eb SQL查询多条不重复记录值简要解析2008-02-28 11:36 以下内容在Oracle 10g下测试由于设计需要,需要查询不重复的记录值,同类问题,想必大家都遇到过,于是乎马上GOOGLE一下,发现此类问题还挺多,解决方案也不少,仔细看看.例如有如下表结构和值tablefid   name sex1     a      男2     b      男3    

从客户端中检测到有潜在危险值的解决办法

问题描述: 针对"http://...?name=&age="这样的请求,使用Request.Form和Request.QueryString方法接收数据,会出现:从客户端(....)中检测到有潜在危险值...的错误提示. 问题原因: 由于在asp.net中,Request提交时出现有html代码或javascript等字符串时,程序系统会认为其具有潜在危险的值.环境配置会报出"从客户端 中检测到有潜在危险值"这样的Error. 解决方案: 方案1: (1)

[django/mysql] 使用distinct在mysql中查询多条不重复记录值的解决办法

前言:不废话.,直接进入正文 正文: 如何使用distinct在mysql中查询多条不重复记录值? 首先,我们必须知道在django中模型执行查询有两种方法: 第一种,使用django给出的api,例如filter value distinct order_by等模型查询api; 代码:LOrder.objects.values('finish_time').distinct() 这里应注意,原官方文档中写到: 示例(第一个之后的示例都只能在PostgreSQL 上工作): >>> Au

js如何删除数组中重复的值

js如何删除数组中重复的值:有时候需要删除数组中重复的元素,下面是分享一下常用的代码,希望能够给需要的朋友带来一定的帮助.代码实例如下: Array.prototype.deleteEle=function() { var obj={}; var newArr=[]; var i,j; for(i=0;i<this.length;i++) { if(typeof(obj[this[i]])=="undefined") { obj[this[i]]=""; }

PHP检测数组中的每个值是否含有特殊字符

本文出至:新太潮流网络博客 /** * [TestArray 检测数组是一维还是二维] * @E-mial [email protected] * @TIME 2017-04-07 * @WEB http://blog.iinu.com.cn * @param [type] $array [数组] */ function TestArray($array){ if(is_array($array)){ foreach($array as $v){ if(is_array($v)){ $Int_A