比較快的一個;在jQuery中創建元素;創建,包裝,追加
我正在動態創建一些元素,並將它們附加到另一個元素。
$element = $('<input />', {
// attributes
}).add('<label />', {
// attributes
});
這產生了<input /><label></label>
及其各自的屬性和內容。我只是想在<div>
來包裝這一點,以爲會有這樣的一個同樣乾淨的方式,但我似乎無法得到以下工作:
$element = $('<input />', {
// attributes
}).add('<label />', {
// attributes
}).wrapAll('<div />');
如果我console.log()
我$element
,這只是<input>
和<label>
。我也試着
$element = $($('<input />', {
// attributes
}).add('<label />', {
// attributes
})).wrapAll('<div />');
分別選擇待所附<input>
和<label>
元件,並且施加.wrapAll()
,但這並不能工作,導致與上述相同。
我關閉了嗎?我應該去另一條路線嗎?
結束了以下感謝要@mu
$element = $('<div />').append($('<input />', {
// attr
}).add('<label />', {
// attr
}));
哦jQuery的;七百萬種方法來做同樣的事情,有時候你無法弄清楚。
編輯
只是增加了對未來的訪客;該append
方法也可以採取一個數組:
$('<div />').append([
$('<div />'),
$('<div />'),
$('<div />'),
]);
這將產生:
<div>
<div></div>
<div></div>
<div></div>
</div>
所以你不必鏈調用append()
。
感謝@mu - 的確現貨上。我用你的技術稍微修改了一下,它的完美,實際上更具可讀性和簡潔性。我會在3點接受。 – Dan