Javascript使确定输入都具有唯一值

时间:2012-04-14 21:23:56

标签: javascript loops input

好的,我知道我正在过度思考这个问题,因为它根本就没有找到我。我有一组输入。我将如何检查以确保它们的值都是唯一的?谢谢!

5 个答案:

答案 0 :(得分:1)

var inputs=[], flag=false;
$('input').each(function(){
    if ($.inArray(this.value, inputs) != -1) flag=true ;
    inputs.push(this.value);
});

if (flag==true) {
   //duplicates exists
}

答案 1 :(得分:0)

这似乎是一个验证问题。你可以用奇怪的方式做(有一大堆if子句,我猜这是不可取的),尝试在数组中添加所有这些输入并在while循环中检查它们。或者,如果这些输入是字符串,您可以连接它们并尝试使用regexp。

对此应该有更多的答案,并且肯定会更好地召集这里的人。

答案 2 :(得分:0)

使用此伪集实现并检查每个条目是否已经重复 也就是说,迭代并检查,如果x in set返回false

http://www.javascriptexamples.org/2011/01/17/how-to-implement-a-set-in-javascript/

答案 3 :(得分:0)

http://jsfiddle.net/PF4rD/

function uniqueValues(elements) {

    var values = {},
        len = elements.length,
        i = 0;

    for (; i < len; i++) {
        if (!values[elements[i].value]) values[elements[i].value] = true;
        else return false;
    }
    return true;
};

答案 4 :(得分:-1)

使用此

var areUnique = true;
$.each($("Input_Selector",function(){
var val = $(this).val();
  $.each($("Input_Selector",function(){
   if(val == $(this).val()){areUnique = false;}
  });
}));
//check the value of areUnique here