jQuery:如何比较多个输入

use*_*235 0 jquery input

如果ALL具有相同的值,如何比较同一表单中的多个输入?我需要检查它们是否都具有相同的值.

<input type="text" class="inputclass"/>
<input type="text" class="inputclass"/>
<input type="text" class="inputclass"/>
<input type="text" class="inputclass"/>
<input type="text" class="inputclass"/>
....
Run Code Online (Sandbox Code Playgroud)

epi*_*isx 6

试试这个:

var arr = $("input.inputclass").map(function(){
    return $(this).val();
}).toArray();

var allHaveSameValue = $.unique(arr).length == 1;
Run Code Online (Sandbox Code Playgroud)

这是jsfiddle.net http://jsfiddle.net/epignosisx/jzWUA/4/

UPDATE ======

正如@Anurag指出的那样,$ .unique仅适用于DOM元素.这是一个不同的实现:

function uniqueArray(arr){
    return $.grep(arr,function(v,k){
        return $.inArray(v,arr) === k;
    });
}

var arr = $(".inputclass").map(function(){
    return $(this).val();
}).toArray();
var allHaveSameValue = uniqueArray(arr).length == 1;
Run Code Online (Sandbox Code Playgroud)

基本上使用一个真正返回唯一数组的函数.