1

在一个超过 400 页的应用程序中,我正在修改一些通用代码以将每个页面上的所有选择字段更改为 jquery ui 选择菜单。我已经用这段代码成功地做到了:

$(function() {
 $("select").each(function(){
   $( this ).selectmenu({ style: 'dropdown', width : 'auto' });  
  });
});

这行得通 - 但是,先前存在的选择对象的 onchange 和 onfocus 事件处理程序不会为新的选择菜单触发。

我尝试了以下方法来保存它们,但它不起作用:

 <script language="JavaScript" type="text/javascript">
 <!--
  $(function() {
     $("select").each(function(){
     changeH = this.onchange;   // save the event handler 
     alert(changeH);  // this shows the correct handler 
     $( this ).selectmenu({ style: 'dropdown', width : 'auto' });  

     $( this ).selectmenu().change = changeH;     // this line does not work
   });
   });
  //-->
  </script> 

也许有更好的方法来做到这一点,例如选择菜单上的一个选项来触发前一个对象的事件。我现在要查看选择菜单代码,但我想对此进行一些思考,因为我在现有的一组页面上有数百个选择字段,我想在 jquery 的一个共同位置进行更改。谢谢..

4

0 回答 0