如果字符串与数组中的值匹配,则为Jquery

时间:2014-11-24 17:18:49

标签: javascript jquery

我网站上的产品页面在字符串中显示#productID,即"产品ID:743961"。使用jQuery我想取这个#productID字符串并将其与ID数组进行比较。如果#productID与数组中的ID匹配,我想附加一条消息。

<div id="productID"> Product ID: 743961 </div>

我最初尝试做以下事情,但很难获得理想的结果。

var myArray = [ 743961, 743963, 743965 ];
$( "#prod_code:contains('myArray')" ).css( "text-decoration", "underline" );

我的阵列有超过2,000个项目,因此这可能不是最好的解决方案。我知道Ajax是最好的解决方案,但在这种情况下无法使用它。

1 个答案:

答案 0 :(得分:3)

如此庞大的阵列听起来像AJAX将是一个更好的解决方案。但是,如果必须使用此模式,则首先需要从元素的文本中获取productId值,然后可以确定它是否存在于数组中。像这样:

var productId = $.trim($('#productID').text().split(':')[1]);
if ($.inArray(productId, myArray) >= 0)
    $('#prod_code').css('text-decoration', 'underline');

这显然是一个相当简单的示例,您很可能需要对productId的提取进行更多验证,以使其更加健壮。