Jquery 如何添加新的<;tr>;当前之后<;tr>;
我有以下表格结构Jquery 如何添加新的<;tr>;当前之后<;tr>;,jquery,html,Jquery,Html,我有以下表格结构 <table> <tr> <td><a href="#"></td> </tr> </table> 当我点击时,我想在点击的旁边添加新的 因此,结果将是: <table> <tr> <td><a href="#"></td> </tr> <t
<table>
<tr>
<td><a href="#"></td>
</tr>
</table>
当我点击
时,我想在点击的
旁边添加新的
因此,结果将是:
<table>
<tr>
<td><a href="#"></td>
</tr>
<tr>
<td><a href="#"></td>
</tr>
</table>
示例:
$('a').bind('click', function(){
$('<tr><td>new td</td></tr>').insertAfter($(this).closest('tr'));
});
示例链接:
基本上,您可以从tr元素
(包括子节点)创建一个副本,并将该副本插入该元素之后。因此,您需要使用.live
绑定来确保新创建的a
元素也调用该点击处理程序
参考:,此外,您还可以写:
$('a').bind('click', function () {
$(this).closest('tr').after('<tr><td>new td<td></tr>');
});
$('a').bind('click',函数(){
$(this).最近('tr')。在('new td')之后;
});
差别不大,但看起来更可读。以下是代码。请检查并让我知道是否有任何问题
function AddRaw(obj){
var $this = obj;
$parentTR = $this.closest('tr');
$parentTR.clone().insertAfter($parentTR);
}
jAndy-第二个示例不需要
.live()
。只需执行.clone(true)
,它也会克隆所有相关数据@jAndy有什么想法吗?如果不使用jQuery,我们如何实现这一点。。与普通javascript一样,函数removeaw(obj){//alert(obj.parent().parent().html());if(obj.resest('tr')[0].rowIndex==0){alert(“无法删除此原始数据”);}else{obj.parent().parent().remove();}$(document).ready(函数(){$(“#提交”)。单击(函数(){//alert(“hi”);var len=$(“#数据表tr”).length;var=“”;对于(var i=0;i
function AddRaw(obj){
var $this = obj;
$parentTR = $this.closest('tr');
$parentTR.clone().insertAfter($parentTR);
}