如何使用jquery设置选择下拉列表中的'selected option'
我有以下jquery函数:
$.post('GetSalesRepfromCustomer', {
data: selectedObj.value
}, function (result) {
alert(result[0]);
$('select[name^="salesrep"]').val(result[0]);
});
result[0]
是我想要在我的选择框中设置为selected
项目的值。 result[0]
等于Bruce jones
。
选择框由数据库查询填充,但其中一个呈现的html是:
<select id="salesrep" data-theme="a" data-mini="true" name="salesrep">
<option value=""> </option>
<option value="john smith">john smith</option>
<option value="Bruce Jones">Bruce Jones</option>
<option value="Adam Calitz">Adam Calitz</option>
<option>108</option>
</select>
$('select[name^="salesrep"]').val(result[0]);
不填充选择框选择选项。 我也试过$("#salesrep").val(result[0]);
没有任何运气。
任何帮助赞赏。
所以我想要的是salesrep下拉列表中的选定/突出显示选项是Bruce Jones。
HTML是:
<select id="salesrep" data-theme="a" data-mini="true" name="salesrep">
<option value=""> </option>
<option value="john smith">john smith</option>
<option value="Bruce Jones" selected >Bruce Jones</option>
<option value="Adam Calitz">Adam Calitz</option>
<option>108</option>
</select>
再次感谢,
整个脚本
<script type="text/javascript">
$(document).ready(function () {
$("#customer").autocomplete(
{
source: "get_customers",
messages:
{
noResults: '',
results: function() {}
},
select: function( event, ui )
{
var selectedObj = ui.item;
$.post('GetSalesRepfromCustomer', {data:selectedObj.value},function(result) {
alert(result[0]);
var selnametest="Bruce Koller";
$("#salesrep").val(selnametest);
});
}
});
});
</script>
呈现的HTML是:
<select id="salesrep" data-theme="a" data-mini="true" name="salesrep">
<option value=""> </option>
<option value="RyanLubuschagne">Ryan Lubuschagne</option>
<option value="Bruce Jones">Bruce Jones</option>
<option value="Adam Calitz">Adam Calitz</option>
</select>
尝试这个 :
$('select[name^="salesrep"] option[value="Bruce Jones"]').attr("selected","selected");
用option[value=result[0]]
替换option[value="Bruce Jones"]
option[value=result[0]]
在选择新选项之前,您可能需要“取消选择”之前的选项:
$('select[name^="salesrep"] option:selected').attr("selected",null);
你也可以阅读:jQuery获取特定的选项标签文本
编辑:使用jQuery Mobile,这个链接可能会提供一个很好的解决方案:jquery mobile - 设置选择/选项值
设置它将其设置为下拉菜单的选项:
$("#salesrep").val("Bruce Jones");
这里是工作演示
如果它仍然不工作:
有一件事我不认为有人提到过,以及我过去犯的一个愚蠢的错误(特别是当动态填充选择时)。 如果没有选项的值与所提供的值相匹配,jQuery的.val()将不能用于选择输入。
这是一个小提琴解释 - > http://jsfiddle.net/go164zmt/
<select id="example">
<option value="0">Test0</option>
<option value="1">Test1</option>
</select>
$("#example").val("0");
alert($("#example").val());
$("#example").val("1");
alert($("#example").val());
//doesn't exist
$("#example").val("2");
//and thus returns null
alert($("#example").val());
链接地址: http://www.djcxy.com/p/83067.html
上一篇: How to set the 'selected option' of a select dropdown list with jquery