-3

我想避免数组中的重复值。

function doValidatePages(){
    var pageNumbers = new Array();

    $('.page_num').each (function () {
        if($.inArray($(this).val(), pageNumbers,0) == -1){
            if($(this).val() != '-') {
                pageNumbers = ($(this).val());
                console.log(pageNumbers)
            } else {
                alert("empty")
            }
        } else {
            alert("duplicate");
        }   
    });
}

输入示例:1、1、3、1

对于第二个“1”,我得到一个 -1,但是在插入 3 之后,我再次得到第三个“1”一个 -1!

4

2 回答 2

3

您需要提供数组作为inArray()函数的参数:

if($.inArray($(this).val(), pageNumbers) == -1) {
...
于 2012-11-15T17:00:06.263 回答
0

请阅读文档:http
: //api.jquery.com/jQuery.inArray/ 您需要在第 4 行通知第二个参数:

if($.inArray($(this).val(), pageNumbers ) == -1){
于 2012-11-15T17:00:47.693 回答