jquery UI Combobox ONCHANGE

Vin*_*pin 32 jquery jquery-ui jquery-ui-autocomplete

如何在jqueryUI组合框中附加onchange函数?这是我的代码:

$(".cmbBox").combobox({
     change:function(){
         alert($(this).val());
     }
});
Run Code Online (Sandbox Code Playgroud)

当值更改时,它将提醒更新的值.

请帮忙.. :)

And*_*ker 50

组合框示例源在示例中就可以了.我change通过像这样修改源代码来触发底层选择的select事件(更改插件内自动完成初始化内的事件处理程序):

/* Snip */
select: function( event, ui ) {
    ui.item.option.selected = true;
    self._trigger( "selected", event, {
        item: ui.item.option
    });
    select.trigger("change");                            
},
/* Snip */
Run Code Online (Sandbox Code Playgroud)

然后为以下常规change事件定义事件处理程序select:

$(".cmbBox").change(function() {
    alert(this.value);
});
Run Code Online (Sandbox Code Playgroud)

不幸的是,这与普通select.change事件的工作方式完全不同:即使您从组合框中选择相同的项目也会触发它.

在这里尝试:http://jsfiddle.net/andrewwhitaker/hAM9H/


Dav*_*ows 22

恕我直言,一种更简单的方法来检测用户已更改组合框(无需调整jQuery UI自动完成组合框源代码)如下; 这对我有用.如果你有很多它们是重复的,尽管有一种方法可以重构.感谢所有在这里和其他地方详细研究和解释过这个小部件的人.

$("#theComboBox").combobox({ 
        select: function (event, ui) { 
            alert("the select event has fired!"); 
        } 
    }
);
Run Code Online (Sandbox Code Playgroud)

  • 这就是我所需要的.另一种谈论触发器和编辑代码的方法不起作用,因为我的源代码不同,我找不到合适的位置来添加它.但这项技术效果很好!谢谢. (2认同)