jquery中的.clone()方法没有复制值

时间:2012-08-20 10:21:05

标签: jquery html

  

可能重复:
  Jquery clone of a textbox without the content

我在jQuery中使用.clone。当我克隆ul时,它也克隆了它的值。我只想复制结构而不是值。当您在输入字段中键入一些值,然后单击克隆时,它也将克隆输入值。

Here is my code snippet

<div class="str">
    <ul><li><input type="text" /></li></ul>
</div>
<a href="#">clone</a>

$(function() {
    $('a').live('click', function() {
        var cln = $('ul:last').clone();
        $('.str').append(cln);
    });
});

2 个答案:

答案 0 :(得分:25)

您可以尝试以下代码。顺便说一句,如果您使用jQuery的最新版本,我建议使用on方法而不是live(此处代替body,您可以使用a的任何父级元素)。

$("body").on("click", "a", function() {
    $("ul:last").clone().appendTo(".str").find("input[type='text']").val("");
});​

DEMO: http://jsfiddle.net/vhq5p/18/

答案 1 :(得分:7)

你的意思是:

var cln= $("ul:last").clone().find("input").val("").end();

演示:jsFiddle