根据data-attribute在select下拉列表中设置选项

Tho*_*asD 2 html javascript jquery

我有一个选择下拉列表,其中包含一个类似这样的国家/地区列表:

<select name="countryCode" id="countryCode">
<option data-countryCode="GB" value="44" Selected>UK (+44)</option>
<option data-countryCode="US" value="1">USA (+1)</option>
<optgroup label="Other countries">
    <option data-countryCode="DZ" value="213">Algeria (+213)</option>
    <option data-countryCode="AD" value="376">Andorra (+376)</option>
</optgroup>
</select>
Run Code Online (Sandbox Code Playgroud)

然后,我使用ipinfo.io查找用户的国家/地区,并希望根据返回的国家/地区和data-countryCode属性设置所选的选项.我尝试了一些不同的方法,但我根本无法让它工作.

我用乡村选择器和查找创建了一个jsfiddle:http: //jsfiddle.net/E7fBk/

如何设置下拉列表以显示用户的国家/地区?

谢谢

托马斯

Aru*_*hny 6

尝试

$(function () {
    $.get("http://ipinfo.io", function (response) {
        $('#countryCode option[data-countryCode="' + response.country + '"]').prop('selected', true)
    }, "jsonp");
});
Run Code Online (Sandbox Code Playgroud)

演示:小提琴