如何在jQuery中创建div元素?


当前回答

所有这些都对我有用,

HTML部分:

<div id="targetDIV" style="border: 1px solid Red">
    This text is surrounded by a DIV tag whose id is "targetDIV".
</div>

JavaScript代码:

//Way 1: appendTo()
<script type="text/javascript">
    $("<div>hello stackoverflow users</div>").appendTo("#targetDIV"); //appendTo: Append at inside bottom
</script>

//Way 2: prependTo()
<script type="text/javascript">
    $("<div>Hello, Stack Overflow users</div>").prependTo("#targetDIV"); //prependTo: Append at inside top
</script>

//Way 3: html()
<script type="text/javascript">
    $("#targetDIV").html("<div>Hello, Stack Overflow users</div>"); //.html(): Clean HTML inside and append
</script>

//Way 4: append()
<script type="text/javascript">
    $("#targetDIV").append("<div>Hello, Stack Overflow users</div>"); //Same as appendTo
</script>

其他回答

从技术上讲,$(“<div></div>”)将“创建”一个div元素(或者更具体地说是一个div DOM元素),但不会将其添加到HTML文档中。然后,您需要将其与其他答案结合使用,以实际使用它做任何有用的事情(例如使用append()方法等)。

操纵文档为您提供了关于如何添加新元素的各种选项。

您可以使用append(添加到父级的最后一个位置)或prepend(添加到其父级的第一个位置):

$('#parent').append('<div>hello</div>');    
// or
$('<div>hello</div>').appendTo('#parent');

或者,可以使用不同答案中提到的.html()或.add()。

我刚刚为此制作了一个小型jQuery插件。

它遵循您的语法:

var myDiv = $.create("div");

DOM节点ID可以指定为第二个参数:

var secondItem = $.create("div","item2");

严重吗?没有。但是这个语法比$(“<div></div>”)好,而且它的价值非常高。

(答案部分复制自:jQuery document.createElement等效项?)

$(HTMLelement)可以使其成功。如果您想要epmty div,请将其用作$('<div></div>');。也可以通过相同的方法设置其他元素。如果您想在创建后更改内部HTML,可以使用HTML()方法。对于获取outerHTML作为字符串,您可以使用如下方式:

var element = $('<div/>');
var innerHTML = element.html(); // if you want set new HTML use it like this element.html('<b>new HTML</b>');
var outerHTML = element[0].outerHTML;
$("<div/>").appendTo("div#main");

将在<div id=“main”></div>中追加一个空白div