Jquery选项选择值与数组中的值匹配

时间:2017-07-04 16:02:06

标签: javascript jquery json foreach

我有一个列出所有国家/地区的选择字段。选项val是国家代码,因此对于美国,期权价值是美国。

我在列表中有一些产品,每个产品都在html中分配了一个唯一的国家/地区代码,例如:

<div class="restricted-items" data-countries="["TR","UA","AE","GB","US"]"></div>
<div class="restricted-items" data-countries="["GB","US"]"></div>
etc

我要做的是,在更改事件时,选项值为US,它会发现数组中的值显示文本。我遇到的麻烦是文本将显示所有带有“限制项目”的课程

我的代码或尝试是:

$(document).on('change', '.fieldset.estimate.select[name="country_id"]', function() {
    var blacklistCountries = JSON.parse(jQuery('.restricted-items').attr('data-countries'));

    console.log($(this).val());
    console.log(blacklistCountries);

    if($.inArray($(this).find(':selected').val(), blacklistCountries) > -1){
        $('.restricted-items').text('This item cannot be shipped to ' + $(this).find(':selected').attr('data-title'));
    } else {
        if ($('.restricted-items').text().length > 0) {
            $('.restricted-items').empty();
        }
    }
});

任何帮助都将非常感谢

0 个答案:

没有答案