jQuery动态追加和删除

jQuery动态追加和删除,jquery,append,Jquery,Append,我有这段代码。 我想从创建的每一行中删除使用“行添加”按钮和“X”按钮创建的行。 有什么想法吗?? 谢谢 $(函数(){ $(“#添加行”)。单击(函数(){ var row=“X”; $(“#表”)。追加(行); }); }); 添加行 名字 姓 电子邮件 如果您使用的是jQuery 1.7+,则可以使用以下方法: 请注意,这假定表中只有按钮类型的元素用于删除行。如果不是这样,您可能希望为“X”按钮提供一个类,并在选择器中使用该类 这是上面的一个例子 如果不使用jQuery 1.7+,则可以

我有这段代码。 我想从创建的每一行中删除使用“行添加”按钮和“X”按钮创建的行。 有什么想法吗?? 谢谢


$(函数(){
$(“#添加行”)。单击(函数(){
var row=“X”;
$(“#表”)。追加(行);
});
});
添加行
名字
姓
电子邮件

如果您使用的是jQuery 1.7+,则可以使用以下方法:

请注意,这假定表中只有
按钮
类型的元素用于删除行。如果不是这样,您可能希望为“X”按钮提供一个类,并在选择器中使用该类

这是上面的一个例子

如果不使用jQuery 1.7+,则可以使用以下方法:

$("#table").delegate("button", "click", function() {
   $(this).closest("tr").remove(); 
});
您可以使用
.closest(“tr”).remove()

您可以尝试删除jquery的最后一行或表的任何特定原始行,如下所示

以下内容将仅删除最后一个原始数据

$('#table tr:last').remove();
以下内容将仅删除第二个原始数据

$('#table tr:eq(1)').remove();

您必须使用实时事件,而不是单击

您可以将其添加到生成的html中

<a class="remove" href="#">X</a>
Live()用于生成内容,因此需要选择该内容。
希望有帮助

为每行分配一个id,并添加一个按钮,单击该按钮可删除具有该id的行

<script type="text/javascript">
var rowIndex=0;
$(function () {
     $("#AddLine").click(function () {
        rowIndex++;
        var row = "<tr id='row_"+rowIndex+"'><td><input type=text /></td><td><input type=text /></td><td><input type=text /></td><td><button onclick="removeRow('"+rowIndex+"')">X</button></td></tr>";
        $("#table").append(row);
    });
});
function removeRow(index){
    $('#row_'+rowIndex).remove();
}
</script>

var-rowIndex=0;
$(函数(){
$(“#添加行”)。单击(函数(){
rowIndex++;
var row=“X”;
$(“#表”)。追加(行);
});
});
函数(索引){
$('#行'+rowIndex).remove();
}

您必须将事件单击添加到正在创建的X按钮中,该按钮的id与要删除的行的id相同

比如:

$(function () {
 $("#AddLine").click(function () {
    var row = "<tr id="row_33"><td><input type=text /></td><td><input type=text /></td><td><input  type=text /></td><td><button id="button_33">X</button></td></tr>";

    $("#table").append(row);

    $("#button_33").click(function () {
          $("#row_33").remove();
    });
});
$(函数(){
$(“#添加行”)。单击(函数(){
var row=“X”;
$(“#表”)。追加(行);
$(“#按钮_33”)。单击(函数(){
$(“#第33行”).remove();
});
});
}))


您还必须添加分配此ID的过程…

live
已被弃用,不应使用。如果使用jQuery 1.7+应该使用
on
方法,如果不使用,则使用
delegate
方法。oh不知道这一点。“打开”是否与“live”具有相同的功能?是的,
delegate
。当
打开时,第二个参数是选择器。看看我的答案。耸耸肩。。。这就是我在尝试贡献时得到的:P过时的信息,取而代之的是被否决的选票。我打字的时间和你的差不多,所以我没有看到。但愿我现在根本没有发帖:顺便说一句,我没有投反对票:)别让这件事耽误了你的贡献,每个人都会犯错!你每天都能学到新东西!我在找这个。我忘了在.on之后移动按钮选择器。你的解释帮助我看出了错误。
$("remove").live("click", function(){
  "find your row. Could be $(this).parents("tr") which searchs your parent until it hits   tr and then remove it by using .remove()"
  return false;
});
<script type="text/javascript">
var rowIndex=0;
$(function () {
     $("#AddLine").click(function () {
        rowIndex++;
        var row = "<tr id='row_"+rowIndex+"'><td><input type=text /></td><td><input type=text /></td><td><input type=text /></td><td><button onclick="removeRow('"+rowIndex+"')">X</button></td></tr>";
        $("#table").append(row);
    });
});
function removeRow(index){
    $('#row_'+rowIndex).remove();
}
</script>
$(function () {
 $("#AddLine").click(function () {
    var row = "<tr id="row_33"><td><input type=text /></td><td><input type=text /></td><td><input  type=text /></td><td><button id="button_33">X</button></td></tr>";

    $("#table").append(row);

    $("#button_33").click(function () {
          $("#row_33").remove();
    });
});