我有这个代码通过访问者IP选择下拉列表中的国家/地区(仅包含7个国家/地区),问题是当找不到某个国家/地区时,该下拉列表会忽略所有默认选定值,只显示一个空格。我想在脚本运行后有一个默认选择值(在本例中为Belize)。
这是脚本:
$.get("http://ipinfo.io", function (response) {
$('.country').val(response.country).attr('selected',true);
}, "jsonp");

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<select class="country">
<option value="BZ" selected>Belize</option>
<option value="GT">Guatemala</option>
<option value="HN">Honduras</option>
<option value="SV">El Salvador</option>
<option value="NI">Nicaragua</option>
<option value="CR">Costa Rica</option>
<option value="PA">Panama</option>
</select>
&#13;
感谢。
答案 0 :(得分:1)
您可以添加条件以检查选择选项中是否存在国家/地区
$.get("http://ipinfo.io", function (response) {
if($(".country option[value='"+response.country+"']").length > 0){
$('.country').val(response.country).attr('selected',true);
}
}, "jsonp");
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<select class="country">
<option value="BZ" selected>Belize</option>
<option value="GT">Guatemala</option>
<option value="HN">Honduras</option>
<option value="SV">El Salvador</option>
<option value="NI">Nicaragua</option>
<option value="CR">Costa Rica</option>
<option value="PA">Panama</option>
</select>
&#13;