2016-11-01 4 views
0

jQueryを使用して、いくつかのhtmlコードの属性と要素を選択し、jQueryでそれらを変更し、その編集されたhtmlコードをDOMに追加します。変数のJqueryセレクター

私はこのような何かを達成したい:

var codeExample = $(".stuff").html(); 
$(codeExample).attr("id").val("2412"); 
$(codeExample).find("div #foo").attr("rel").val("bar"); 
$("#element").append(codeExample); 

が可能ということですか?または、まずDOMにhtmlコードを挿入してjQueryでそれを探して編集する必要がありますか?

+6

これは完全に可能です。それに問題はありますか? –

+0

は私のダミーコードですか? –

+0

'codeExample'を文字列ではなくjQueryオブジェクトとして保存する必要があります。また、DOMが期待どおりに動作するかどうかについてDOMがどのように構造化されているかによって異なります。 –

答えて

2
var codeExample = $(".stuff"); 
codeExample.attr("id", "2412"); 
codeExample.find("div#foo").attr("rel", "bar"); 

あなたidrelは既に修正されているが。ロリー・コメントで述べているように、あなたのコードが動作し、問題はないはずです

$("#element").append(codeExample); 
+0

私の間違いは、var codeExampleが定義されていなかったことです。その後、クラッシュしていましたが、良いアイデアをくれたので、歓声があります。 –

+0

ありがとう:)正しい印を付けてください:) – void

1

が、あなたはすでにDOMに配置されたコンテンツを交換したいと:しかし、あなたはまだ、次の操作を行い#elementにそれを追加したい場合代わりに$('.stuff').replaceWith(codeExample);を使用すると便利です。

replaceWith()については、the jQuery documentation pageをご覧ください。