我想在我的文本字段之後插入文本,但我不允許使用innerHTML。我的html代碼看起來像這樣在textfield(表單)之後插入節點
<label for="name">Firstname:</label>
<input type="text" name="Name:" id="name" size="40" />
在此先感謝!
我想在我的文本字段之後插入文本,但我不允許使用innerHTML。我的html代碼看起來像這樣在textfield(表單)之後插入節點
<label for="name">Firstname:</label>
<input type="text" name="Name:" id="name" size="40" />
在此先感謝!
我不知道這是否是你問什麼,因爲你的問題是不完全清楚,我,但我認爲這是它:
var nameInput = document.getElementById('name');
var textNode = document.createTextNode('Some Text');
nameInput.parentNode.insertBefore(textNode, nameInput.nextSibling);
你可以使用insertAfter
方法:
function insertAfter(element, after) {
element.parentNode.insertBefore(after, element.nextSibling);
}
您<input>
元素之後插入一個新的文本節點(document.createTextNode(myText)
)。
+1,但你能解釋一下爲什麼這不起作用? 'nameInput.parentNode.insertAfter(textNode,nameInput);'? – 2012-01-07 04:22:19
@AdamRackis默認情況下,在DOMElement中沒有insertAfter函數 – Paulpro 2012-01-07 04:23:35
我明白了 - 顯然jQuery讓我不知道大部分原生dom的東西:) – 2012-01-07 04:24:56