首页 > 解决方案 > 需要查找选项值是否具有子字符串,以及是否将选择更改为该值

问题描述

我正在从 JSON 中进行选择,以附加每个选项。在选项值中,我传递了该状态的 StateCode 和 Prefix。由于列表很大(<240 个状态),如何检查 StateCode 是否在选项值内并自动更改为它。

var phonePrefixes = JSON.parse(country_phone_prefixes);
 var prefixSelect = $("select[id*='_prefix']");
        var currentCountry = $("body").attr("data-country");
        if (prefixSelect.length) {
            $.each(phonePrefixes, function(i,e){
                var $option = $('<option value="'+e.country_code+' '+e.phone_prefix+'">'+ e.name +' '+e.phone_prefix +'</option>');
                prefixSelect.append($option);
            });
            $(prefixSelect).val(currentCountry).change();

JSON:

[{
    "name": "Afghanistan",
    "phone_prefix": "+93",
    "country_code": "AF"
}, {
    "name": "Aland Islands",
    "phone_prefix": "+358",
    "country_code": "AX"
}, {
    "name": "Albania",
    "phone_prefix": "+355",
    "country_code": "AL"
}, {
    "name": "Algeria",
    "phone_prefix": "+213",
    "country_code": "DZ"
}, {
    "name": "American Samoa",
    "phone_prefix": "+1684",
    "country_code": "AS"
}, {
    "name": "Andorra",
    "phone_prefix": "+376",
    "country_code": "AD"
}]

标签: javascriptjquery

解决方案


推荐阅读