0

有一个查询数据库并在选择字段中突出显示返回结果的脚本。

我在 jquery、jquery mobile 和 jquery ui 中使用 codeigniter。

我的视图语法是:

<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);
    });
}

我已经验证了 result 的值是有效的。目前警报返回“是”。

如何yesdefaulttreated选择框中进行选中?

目前的错误信息是:

Error: no such method 'defaulttreated' for selectmenu widget instance并指向 jquery.min.js 的第 3 行

4

2 回答 2

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');
        }
      });
    }
  });
}
于 2013-08-13T23:59:02.413 回答
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

注意:您不必“取消选择”其他选项,除非此选择有多个。工作示例:在此处输入链接描述

于 2013-08-14T11:28:55.887 回答