我有一个基于PrimeFaces的Webapp,它由多个Tabs组成,每个Tab包含一个数据表。我使用jQuery将click处理程序绑定到输入在datatable组件中具有某个类的字段。这是jQuery代码:
$(document).ready(function() {
$('.ui-column-filter').bind('click' , function() {
//Desired functionality comes here
});
};
现在,我面临的问题是此代码仅在第一次加载网页时起作用,并且仅适用于第一个标签。只要我单击另一个选项卡,代码就会停止工作,即使对于之前工作的第一个选项卡也是如此。每个标签通过AJAX获取其内容,所以我的猜测是,一旦发出AJAX请求,通过$(document).ready附加的事件处理程序就不再起作用了。我该如何解决这个问题?
答案 0 :(得分:0)
通过此链接JSF/PrimeFaces ajax updates breaks jQuery event listener function bindings解决问题,如下所示:
$(document).on("click", ".ui-column-filter", function() {
//The desired functionality
});