2009-04-14 17 views
6

私がしようとしているのは、jQueryを使ってテーブルポケベルコントロールを作成することです。 多くのリンクとスパンが含まれています。私は平易な文字列の連結でこれを行うことができましたが、jQueryがこれをもっとエレガントにすることはできません。 jTemplateを使用することはできません。なぜなら、生成にかなりの手続き型ロジックがあるからです。jQueryで複数のHTML要素を作成するには?

質問:jQueryでHTML要素の配列を作成し、それをいくつかのコンテナに追加する方法はありますか?

ありがとうございました。

答えて

22

$('First Element').add($('Second Element')).appendTo($('body'))

+0

これは2009年には機能しているかもしれませんが、今日はjQueryバージョンに依存するエラーメッセージで失敗します。 [jsFiddle](https://jsfiddle.net/dtxg22oo/1/)。これは、 '$( 'first')です。add($( 'second'))。appendTo(...)' –

+1

これをテストしたところ、@romkynsは正しいです。私はそれに応じて答えを編集しました。 – Timwi

5

append()は常にあります。

文字列連結と追加を使用すると、最も複雑ではなく、おそらく最も速いオプションになると思われます。

function elemCreate(type, content, attrs) { 
    /* type: string tag name 
    * content: string element content 
    * attrs: associative array of attrs and values 
    */ 
    elem = '<' + type + '></' + type + '>' 
    e = $(elem).attr(attrs) 
    e.append(content) 
    return e 
} 

stuff = [];  
stuff.push(elemCreate('a', 'Click me!', {'href': 'http://stackoverflow.com'}); 

$(stuff).appendTo($('#container')); 
+0

返品eは私のために働いていません返品e [0]は働いています – Azd325

8

文字列連結(またはArray.join)されています。しかし、次は(間違いなく)要素の作成を簡素化し、あなたが指定された親要素にそれらを追加することができますへの道のテストされていない例です。あなたがきれいにしている限り);

関連する問題