将表单从一个div移动到另一个div

时间:2012-09-22 19:42:33

标签: jquery

我正在尝试使用jQuery将表单从一个div移动到另一个div onclick。看似简单,但似乎不起作用......这就是我所拥有的。

$(".btn").click(function() {
    $("#div2").append("#frm");
$("#div1").remove();
});



<div id="div1">
    <form id="frm"><input class="web" type="text"><span class="btn">go</form>
</div>

<div id="div2">
    content
</div>

6 个答案:

答案 0 :(得分:5)

$("#div2").append("#frm")字符串 "#frm"追加到div2表单元素本身idfrm。添加$("#frm")代替添加表单元素:

$("#div2").append($("#frm"));

<强> DEMO

答案 1 :(得分:2)

基本上你需要把div的1的html内容移到div 2中。

表单是div 1的html内容,因此在我的示例中,您可以看到当用户点击按钮时,我将div的1个contnet(表单)附加到div&#39; s 2

代码

$(document).ready(function() {


$(".btn").click(function() {
    $("#div2").append($("#div1").html());
$("#div1").remove();
});

});

DEMO

答案 2 :(得分:1)

jQuery .append()方法不会将选择器字符串作为其参数之一,所以现在您没有正确地定位表单;一个选项是使用 接受选择器字符串的.appendTo(),或者您可以使用第二个jQuery对象简单地包装该字符串。

$(".btn").click(function() {
    $("#frm").appendTo("#div2");
    $("#div1").remove();
});

答案 3 :(得分:0)

试试这个

$(".btn").click(function() {
  $("#div2").append($('#frm').html());
  $("#div1").remove();
 });

答案 4 :(得分:0)

.append()不接受选择器,因此您的选择器被解释为内容,创建一个jQuery对象,选择#frm并将其传递给.append()

$("#div2").append($("#frm"));

此外,您的范围缺少其结束标记

DEMO

答案 5 :(得分:0)

div 1中表单的jquery命令不会传递给fiv 2的形式,为什么?新表格未作为原件提交。

$(document).ready(function() {
   $(".btn").click(function() {
     $("#div2").append($("#div1").html());
     $("#div1").remove();
   });
});
伙计们,我明白了:

$(document).ready(function() {
   $(".btn").click(function() {
    var master = $('#div1 > ').append();
    ('#div2').html(master);
     $("#div1").remove();
   });
});