我的 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 關注
- 114 瀏覽
添加回答
舉報
0/150
提交
取消