jquery live change事件在IE下失效的解决方法

jquery live方法的作用是向动态生成的内容添加事件响应,具体这里距不多说了,有兴趣的可以参照本站这篇文章:

jQuery向动态生成的内容添加事件响应 jQuery live() 方法详解

但是昨天却发现这个live方法在ie浏览器下对change事件没有作用,经过几番折腾,终于将这个问题解决,下面是jquery live change事件在IE下失效的解决方法。

  1. $("#phpernote select").live("change",function(){ 
  2.      //处理内容 
  3. }); 

以上这段代码在火狐下面是有效果的,在ie下面会失效,下面是对应的正确的代码:

  1. $('#phpernote select').bind('change',function(){ 
  2.     //处理内容(change事件处理) 
  3. }).live('change',function(){ 
  4.     //处理内容(动态生成的select的事件处理) 
  5. }).live('click',function(){ 
  6.     if($.data(this,'events')==null||$.data(this,'events').change==undefined){ 
  7.         //处理内容(click事件处理,如果没有click事件,也可以不写) 
  8.     } 
  9. }); 

这里需要将相关的处理代码写两遍了。

转载请注明:代码家园 » jquery live change事件在IE下失效的解决方法

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)