2012-01-07 13 views

答えて

5

あなたの質問は、私には全く明らかではないが、私はこれがそれだと思うので、私は、これはあなたが求めているものであるかどうかわからないんだけど:

var nameInput = document.getElementById('name'); 
var textNode = document.createTextNode('Some Text'); 
nameInput.parentNode.insertBefore(textNode, nameInput.nextSibling); 

Example JSFiddle

+0

+1を助けるかもしれないが、これは動作しませんなぜあなたは説明できますか? 'nameInput.parentNode.insertAfter(textNode、nameInput);'? –

+1

@AdamRackis DOMElementのinsertAfter関数は、デフォルトでJavaScript – Paulpro

+0

にあります。明らかにjQueryはネイティブDOMの多くを知らないようにしています:) –

1

することができますinsertAfterメソッドを使用します。

function insertAfter(element, after) { 
    element.parentNode.insertBefore(after, element.nextSibling); 
} 

があなたの<input>要素の後に新しいテキストノード(document.createTextNode(myText))を挿入します。

+0

関数のif文は必要ありません。なぜなら、2番目の引数to insertBeforeはnullで、自動的に追加されます。関数本体全体は次のようになります: 'element.parentNode.insertBefore(after、element.nextSibling);' – Paulpro

+0

@ user1:投稿後約5秒後に取り出しました。 :) – Ryan

+0

+1ああ、私はhahaを参照して、私はおそらく長い時間がかかりましたコメント; P – Paulpro

関連する問題