如何在javascript中过滤逗号分隔的整数值

时间:2011-08-03 14:34:51

标签: javascript jquery html

我在javascript中有一个可变的,如下所示

  var element = parent.document.getElementById('productCollectionField');
  var values = element.value;

之类的输入字段
  <input type="hidden" value="1,2,3,4" id ="productCollectionField" />

所以var元素包含1,2,3,4

现在我有值5,我想在值中检查它。我怎样才能做到这一点...?这些数字可以是任何数字。

3 个答案:

答案 0 :(得分:4)

var myResults = values.split(",")

然后您将拥有一个可以解析的数组

答案 1 :(得分:3)

最简单的解决方案是使用以下函数,该函数返回true,无论数字是否在值字符串中。

var value = '1,2,3,4';

function checkNumber(number, values) {
    var numberExists = false;
    var strArray = values.split(",")

    for (var i = 0; i < strArray.length; i++)
    {
        // You could use if (strArray[i] == number), but using === is advised
        // since it's more specific about the type
        if ( parseInt(strArray[i]) === number)
            numberExists = true;
    }
    return numberExists;
}

// returns false
checkNumber(5, value);

// returns true
checkNumber(2, value);    

答案 2 :(得分:2)

jQuery可以使用吗?如果是,你可以这样做:

首先,JMax说:

var myResults = values.split(",")

定义合并后将作为输出的字符串:

var newString = '';

然后,

if ( jQuery.inArray( 5, myResults ) == -1 ) {

    myResults.push( 5 );

    newString = myResults.join(',');
}

干杯,