jQuery维护至少一个按钮并保持值

时间:2014-03-17 10:26:06

标签: jquery jquery-clone

我想删除按钮'确定'但至少保留一个。

$(document).on('click', "#client-submit", function(){
    $("#client-div").css('height', $("#client-div").height() + 35);
    $("#client-table").last().clone().appendTo($("#client-div")); 
    $(this).remove(); // problem here
});

我确实理解这个问题..似乎last().clone()没有正确地做到这一点。似乎不是获得最后一个#client-table而是获得第一个...... 您可以查看问题here

修改:忘记提及,我也想保留之前select中的选定值。我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:1)

你的问题就在这一行:

$("#client-table").last().clone().appendTo($("#client-div")); 

您不断创建“客户端表”表,但是您正在使用ID来获取它们。当你使用id时,jQuery只会返回第一个。因此,“。pop()”实际上是你的第一个。

在“client-table”上放一个课程并使用

$(".client-table:last")

答案 1 :(得分:1)

这应解决它:

$("#client-table tr:last").clone().appendTo($("#client-table"));

如果要清除最后一个输入字段而不是保留它,请在上述语句后添加:

$("#client-table").find("input:text:last").val("");

答案 2 :(得分:0)

堆叠器的帮助下解决了所有麻烦。您可以查看解决方案here

  1. ID更改为Class解决了我关于按钮的问题。
  2. 在克隆之前检索select选项的值解决了我关于维护以前内容的问题。
  3. 解决方案:

     var i = $(".client-select:last").find(':selected').val();
     $(".client-table").last().find('.client-select').val(i);