我有一个main.php,其中另一个页面(page1.php)被嵌入div中。 当加载page1.php时,我正在动态更新page1中的表。
现在,当我在表的click事件上调用一个函数时,函数被调用,但是控件没有进入我在函数内部调用的表的click事件中。 但是,第二次点击控件进入并正常工作。
以下是js文件中的函数
function highlight_table()
{
$(#table tr).click(function(){
alert("here");
});
答案 0 :(得分:1)
确保在加载DOM时调用此函数,以便第一次附加事件处理程序:
$(function() {
highlight_table();
});
如果加载DOM时table
不存在但稍后使用AJAX添加,则可能需要在AJAX请求的success
处理程序中调用此函数。
此外,您可能需要使用.live()
函数,以便在更新表时保留单击处理程序(如果需要):
$('#table tr').live('click', function() {
alert('here');
});
答案 1 :(得分:0)
您可能还想从我所阅读的内容中查看.delegate()
函数,jQuery的创建者似乎正在推动用户超越.live()
。