2011-07-12 45 views
0

我注意到在jquery中附加的文本不会被jquery函数处理。例如,你附加一个包含下拉列表的代码,并且你有一个调用它的值的函数。此功能仅适用于现有代码,不适用于附加代码。JQuery处理交互内容


和正确的答案是:

而不是使用:

$('#purchase-table select').change(function() { 
}); 

用途:

$('#purchase-table select').live('change', function() { 
}); 

你需要它能够通过处理Ajax的附加内容你的jQuery功能。祝你今天愉快。

感谢大家的帮助。

回答

1

您可以使用jQuery .live()

追加新的内容:

$('body').append('<div class="clickme">Another target</div>'); 

添加处理它:

$('.clickme').live('click', function() { 
    // Live handler called. 
}); 

新的元素也将触发。然后点击处理程序。

1

处理交互式内容事件的最简单方法是jQuery.live方法。

http://api.jquery.com/live/

说明:将一个处理该事件对于当前选择现在和将来匹配这,所有的元素。

+0

谢谢,Ghommey,我也会检查一下。 – tak