JQuery UI Combobox禁用

时间:2012-09-18 19:00:06

标签: jquery jquery-ui

我希望这不是一个重复的问题。我在Stackoverflow上搜索得足以找到答案,这是我最简单的问题。

我有一套radiobox,根据radiobox的值,我需要禁用/启用用户从组合框中选择一个。

无论我做什么,我都无法进行组合框ReadOnly或Disabled。我通过直接将它连接到http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js来使用JQueryUI。将常规组合框制作成jQuery的代码如下: -

$('#cbCountry").combobox();

我尝试在网络上的不同位置指定不同的方法。似乎没什么用。

3 个答案:

答案 0 :(得分:3)

轻松修改组合框以使用:

$("#cbCountry").combobox('disable'); 
$("#cbCountry").combobox('enable');

在你的combobox.js文件中添加:

  1. _create:function()中添加局部变量“a”(在 var输入之后, a ...)。
  2. input = $("<input>")更改为input = this.input = $("<input>")
  3. a = $("<a>")更改为a = this.a = $("<a>")
  4. 销毁功能之后插入:
  5. -

    disable: function() {
        this.input.prop('disabled',true);
        this.input.autocomplete("disable");
        this.a.button("disable");
    },
    enable: function() {
        this.input.prop('disabled',false);
        this.input.autocomplete("enable");
        this.a.button("enable");
    }
    

答案 1 :(得分:0)

我刚检查过,你是对的,禁用组合框比我们想象的更复杂。

所以,我为你做了一个小提琴,你可以在这里找到:http://jsfiddle.net/S77xa/61/

答案 2 :(得分:0)

Boulliou的答案是更好的答案。这是另一种方式:

如果你确实使用$ .autocomplete,那么:

$('#cbCountry)。。autocomplete(“option”,“disabled”,true);