gpt4 book ai didi

jQuery - .trigger() 在 .load() 之后不起作用

转载 作者:行者123 更新时间:2023-12-01 00:29:21 27 4
gpt4 key购买 nike

这是我的代码:

function refresh () {   
sub_tab=$("#hid").val();
$("#content").load(cur_tab+'.php',function () {
alert(sub_tab);
$("#pd").trigger('click');
});
}

线路$("#pd").trigger('click');似乎不起作用。但是,如果我将此行作为独立操作执行(没有 load ),它就可以工作。
#pd<div>它正在加载到包含上述脚本的页面中。
有什么想法吗?

#pd 位于另一个加载到 #content 中的 PHP 页面内部。现在,当我单击#pd时,它工作正常,只是,当我将PHP文件重新加载到#content时,触发事件似乎不起作用

最佳答案

如果click事件绑定(bind)到#pd,并且#pd位于#content内部,每次重新加载内容时,您都会丢失绑定(bind),因为 #pd 正在被销毁并重新创建。

尝试使用delegate绑定(bind)事件 - 它与 Ajax 调用和动态 DOM 配合得更好:

$("#content").delegate("#pd", "click", function(){
// click event
});

稍后,当您调用 $("#pd").trigger('click'); 时,您应该会看到预期的结果。

关于jQuery - .trigger() 在 .load() 之后不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6649665/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com