3

我正在构建一个html页面,我需要将html代码从一个div添加到另一个div。

这是我的第一个 div:

<div id="placeHolder" style="display:none">
    <div id="1">....</div>
    <div id="2">....</div>  
    <div id="3">....</div>      
</div>

我想将 id 为 1、2 和 3 的 div 添加到另一个 div(#mainDiv) 但不是一次全部添加。

有没有办法用 jquery 添加部分 html 代码?我知道有一个名为 append 的函数,但我不知道它是否适合这种类型的场合..

谢谢

4

6 回答 6

3

我通过搜索 stackoverflow 找到了这个问题的答案。我猜您正在寻找此处解释的 appendTo 函数。所以,是的,你是对的,我认为 appendTo 是一个很好的解决方案:-)

于 2013-05-27T15:19:52.777 回答
1

比如说你想将它们从第二个 div 移动到第一个:

<div id="newPlace">
</div>

<div id="placeHolder">
  <div id="1">....</div>
  <div id="2">....</div>
  <div id="3">....</div>
</div>

然后你可以用 jQuery 选择元素,用 append 将它们复制到另一个地方,然后从原来的地方删除它们:

$("#placeHolder div").appendTo("#newPlace").remove();
于 2013-05-27T15:21:47.177 回答
0

不知道这是否是您一次添加 html cod 的意思...

假设您有一个新的 div 来添加 html 代码:

<div id="placeHolder" style="display:none">
    <div id="1">....</div>
    <div id="2">....</div>  
    <div id="3">....</div>      
</div>

<div class="result"></div>

你可以这样做:

$(document).ready(function (){
  $('#placeHolder').children().each(function (){
    $('.result').append(this);
    // do some other things
  });
});

使用 children() 提取目标 div 中的所有子 div,并使用 each() 对它们进行读写。

http://jsfiddle.net/nvQG8/1/

于 2013-05-27T15:40:56.733 回答
0

你可以试试这个:

<div id="placeHolder" style="display:none">
    <div id="1" onclick="change(this)">....</div>
    <div id="2" onclick="change(this)">....</div>  
    <div id="3" onclick="change(this)">....</div>      
</div>

Javascript:

function change(element) {
    if ($(element).attr('id') === 1) {
        $('#mainDiv').append($(element).html());
    } ...
    // AND THE SAME FOR EACH DIV. IF YOU DON'T HAVE TOO MUCH, THIS CAN BE A WAY
}

使用onclick您的 div 或任何您想用来触发它的事件,您可以使用此功能来更改您的内容,mainDiv具体取决于选择的元素,由id属性标识。

如果您正在设置您的 div 数据而没有在您的 div 中抛出任何事件,您只需将我发布的函数添加到您想要使用它的位置。像这儿:

$(function() {
    //SOME STUFF
    $('#mainDiv').append($('#1').html()); //OR
    $('#mainDiv').append($('#2').html()); //OR
    $('#mainDiv').append($('#3').html());
});
于 2013-05-27T15:20:49.443 回答
0

假设这是你想要的

使用附加()

尝试这个

$(function(){
  $('#mainDiv').append($('#1')); //to append div with id 1
  $('#mainDiv').append($('#2'));

});

在这里摆弄

于 2013-05-27T15:23:21.493 回答
0

只需将其存储在字符串 var 中并在循环之后附加它。

于 2016-01-05T16:33:12.467 回答