JQuery动态添加表格,然后动态删除不成功问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JQuery动态添加表格,然后动态删除不成功问题相关的知识,希望对你有一定的参考价值。
背景:
自己做了一个测试网页,想动态添加表格,然后删除,按照网上的教程写完,发现点击"删除参数"按钮没用
源码:
function addtr() { var trinfo = "<tr><td><input placeholder=\'参数名称\' style=\'width: 80%\'></td>" + "<td><input placeholder=\'参数值\' style=\'width: 70%\'><button id=\'delete-btn\' onclick=\'removetr(event)\'>删除参数</button></td></tr>"; $("#keytable").append(trinfo); } function removetr() { $(this).parents("tr").empty(); }
问题现象:
不能删除
问题原因:
选择器没有选到元素,用console.log抓取获取到的元素发现是全局windows
解决方法:
提供两种方法
方法一:利用event点击事件
function addtr() { var trinfo = "<tr><td><input placeholder=\'参数名称\' style=\'width: 80%\'></td>" + "<td><input placeholder=\'参数值\' style=\'width: 70%\'><button id=\'delete-btn\' onclick=\'removetr(event)\'>删除参数</button></td></tr>"; $("#keytable").append(trinfo); } function removetr(ev) { $(ev.target).parents("tr").empty(); }
方法二:利用监听on功能
function addtr() { var trinfo = "<tr><td><input placeholder=\'参数名称\' style=\'width: 80%\'></td>" + "<td><input placeholder=\'参数值\' style=\'width: 70%\'><button id=\'delete-btn\' onclick=\'removetr()\'>删除参数</button></td></tr>"; $("#keytable").append(trinfo); } $(function () { $(document).on("click", "#delete-btn", function () { $(this).parents(\'tr\').empty() }); });
以上是关于JQuery动态添加表格,然后动态删除不成功问题的主要内容,如果未能解决你的问题,请参考以下文章