我的 onclick 函数只能在第一次使用。onclick 函数触发 ajax 请求后,在 success 函数内,我重新加载一个包含从 SQL 检索值的代码并使用 for 循环构建 html 表的代码。尽管它正确刷新了表(它正确地从数据库添加了新值),但当我单击表元素时,onclick 函数停止反应。但是当我刷新表格时,它再次开始工作,但仍然只有 1 次我究竟做错了什么?这是我的 onclick 函数与 Ajax 的结合:<head><script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script> $(document).ready(function(){ $('#main tbody').on('click', 'td', function () { $irow = $(this).parent().index(); $icol = $(this).index(); console.log(" row and column: ");//to debug console.log($irow);//to debug console.log($icol);//to debug $.ajax({ type: "POST", url: "check_db.php", data: { 'srow' : $irow, 'scol' : $icol }, success: function(data) { alert(data); console.log(data); $("#view").load(" #view > *") } }); }); }); </script> <style>table, th, td { border: 1px solid black;}</style></head>
1 回答
芜湖不芜
TA贡献1796条经验 获得超7个赞
使用第一个静态元素(#view
在您的情况下)作为您的事件委托者:
$('#view').on('click', 'td', function () {
进一步解释一下,由于 AJAX 成功后您重建了 static 的全部内容#view
,因此 TBODY$('#main tbody')
是一个全新的元素,它不再委托任何初始单击事件。
- 1 回答
- 0 关注
- 87 浏览
添加回答
举报
0/150
提交
取消