我有这个选择,我加载了一堆国家。 在用户选择一个之后,他将转到另一个搜索信息的页面。如果他在默认选择该国家之前选择了一个国家(在另一个选择的国家/地区,在包含相同国家/地区的另一个页面中)。
<div data-role="fieldcontain">
<label for="selecionarPaisPreferencia" class="select">Pais</label>
<select name="selecionarPaisPreferencia" id="SlSelecionarPaisPreferencia"></select>
</div>
如何在加载页面之前更改select中的默认选项。
BTW:我已经在全局变量中存储了他所选国家的名称。
我加载了dinamically选项,因为我不使用数据库这是一个练习。
for (i = 0; i < countrys.length; i++) {
$("#SLSelectPaisConsulta").append('<option data-pais="' + countrys[i] + '">' + countrys[i] + '</option>');
$("#SlSelecionarPaisPreferencia").append('<option data-pais="' + countrys[i] + '">' + countrys[i] + '</option>');
}
答案 0 :(得分:1)
$('#selecionarPaisPreferencia').val('country_name_value_here');
答案 1 :(得分:0)
如果您要在SelectedValue
中选择值,则可采用另一种方法:
$("#SlSelecionarPaisPreferencia").find('[value="'+SelectedValue+'"]').attr("selected", true);
为了完整起见,请务必注意直接使用val()
应该更有效,但val()
不适用于多项选择,而此方法可以单个或多个使用选择选择。您只需要为要选择的每个值调用一次。
答案 2 :(得分:0)
你可以尝试:
$("#SlSelecionarPaisPreferencia").val(selectedPais);
或者
$("#SlSelecionarPaisPreferencia")
.children(':contains('+selectedPais+')').prop('selected',true);
或者:
$("#SlSelecionarPaisPreferencia > option:contains("+selectedPais+")").prop('selected',true);