有一个查询数据库的脚本,并在选择字段中突出显示返回的结果。
我正在使用codeigniter和jquery,jquery mobile和jquery ui。
我的视图语法是:
<select id="defaulttreated" name="defaulttreated" data-mini="true" data-theme="a">
<option value="0" selected></option>
<option value="yes">Yes</option>
<option value="no">No</option>
</select>
我的观点jquery是:
function gettreating() {
//populate treating start
var deliveryaddress = $("#deliveryaddress").val();
//populate treating end
$.post('gettreatingdefault', {
deliveryid: deliveryaddress
}, function (result) {
alert(result);
var el = $('#defaulttreated');
el.val(result).attr('selected', true).siblings('option').removeAttr('selected');
el.selectmenu("defaulttreated", true);
});
}
我已经确认结果的值是有效的。目前警报返回'是'。
如何在yes
选择框中选择defaulttreated
?
目前错误消息是:
Error: no such method 'defaulttreated' for selectmenu widget instance
并指向jquery.min.js的第3行
答案 0 :(得分:1)
尝试类似:
function gettreating(){
$.post('gettreatingdefault.php',
{deliveryid: $("#deliveryaddress").val()},
function(result){
$('#defaulttreated option').each(function(){
$(this).removeAttr('selected');
if($(this).val() === result){
$(this).attr('selected', 'selected');
}
});
}
});
}
答案 1 :(得分:1)
var el = $('#defaulttreated');
var result = "yes";// just to fix the value
el.val(result);
alert(el.val() + el.find('option:selected').text());//show the selected option and its text
注意:除非此选项有多个,否则您不必“取消选择”其他选项。 工作示例:enter link description here