.change()在jQuery UI之后不会触发

时间:2014-10-30 13:42:04

标签: javascript jquery html jquery-ui

使用jQuery UI转换选择字段后,更改事件不起作用。

$(function() {
    $( "#speed" ).selectmenu();
    $( "#files" ).selectmenu();
    $( "#number" )
      .selectmenu()
      .selectmenu( "menuWidget" )
        .addClass( "overflow" );
    $( "#speed" ).change(function(){
      console.log("change");
    });
  });

如果注释掉$( "#speed" ).selectmenu();,那么更改事件是否完美?为什么会这样?

http://jsbin.com/debem/1/edit?js,console,output

2 个答案:

答案 0 :(得分:4)

您应该使用ui选择菜单中的更改事件 here

$( "#speed" ).selectmenu({
       change: function( event, ui ) {
          console.log('change');
        }
   });

答案 1 :(得分:2)

selectmenu需要在初始化时作为参数传入更改函数,或者您必须按照in the selectmenu api docs所述的selectmenuchange

来监听{{1}}事件

编辑:更新您的JS Bin以观看正确的事件http://jsbin.com/gogenuhaso/1/edit?js,console,output