Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何添加新的<;tr>;当前之后<;tr>;_Jquery_Html - Fatal编程技术网

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);
}