2012-02-08 92 views

回答

13

我找到了答案。所以在这里,它是:

$(function() {  
     $('#items').selectmenu({ 
      change: function() { 
       alert('x'); 
      } 
     }); 
}); 
+0

也可以稍后添加一个onchange行为,后选择菜单已经启动。只需选择具有选择菜单行为的项目并编辑更改属性,例如'$('#items')。change(function(){...})' – berliner 2012-08-14 19:39:23

+0

@berliner这个解决方案对我不起作用... 反弹你的解决方案只在打开页面时才起作用。两年后选择.. – Maxbester 2013-01-23 13:45:37

+0

......这是唯一的解决方案吗?在我的项目中,有大量的选择框与现有的change() - 事件,并且都不会与selectmenu一起工作。 – user706420 2014-07-07 07:02:43

10

由于这首先来到了在谷歌并没有给我,我一直在寻找答案,已经看了看jQuery UI的代码,它可以在最初设立的选择菜单来完成,如下所示绑定到selectmenuchange事件。无论如何都为我工作。

$('#items').selectmenu(); 

$('#items').on('selectmenuchange',function() { 

    alert("hello world"); 

}); 
1

我只是把我的头发拉出来,想出了一个简单的方法。你基本上必须告诉selectmenu触发改变事件。

当您建立selectmenu使用像这样的关闭方法:

//Set select box to jQuery UI selectmenu 
$('select').selectmenu({ 
    close: function(event, ui){ 
     //Fire change event 
     $(this).change(); 
    } 
}); 

然后定义你的改变事件是这样的:

$('#container').on('change', 'select', function(e){ 
    alert('x'); 
}); 
相关问题