2010-07-07 126 views
0

我試圖添加一個字符串變量作爲節點的子節點。 DOM異常8.有沒有人有任何指針:我使用看起來像這樣如何使用Node.insertBefore將內容添加到特定節點

$(this).parentNode.parentNode.insertBefore('content',$(this).parentNode) 

我相信這是正確的語法,但我不斷收到NOT_FOUND_ERR的代碼?

+0

而不是使用一個字符串「內容」的,也許你有使用'一個createTextNode(「內容」)',並通過它創建的節點如下例所示:http://javascript.about.com/library/bldom12.htm – AaronLS 2010-07-07 21:37:24

+0

我不熟悉RoR,所以我可能會錯,但是您使用的是jQuery和普通JavaScript的組合嗎? – 2010-07-07 22:07:22

+0

@Ryan Kinal:沒錯。這個問題沒有ROR代碼,但也許有一個適用的ROR技巧? ;-) – 2010-07-07 22:25:17

回答

0
parentElement.insertBefore(el, beforeWhat); 

如果要插入新元素的節點之前

如果要追加新的textNode的元素你最好

var textNode = document.createTextNode("content"); 
el.appendChild(textNode); 

但真正困擾我的是,你似乎使用jQuery或一些框架,並使用DOM方法。因爲那不行。

你需要用自己的方法,然後,像:

$(this).append("content"); 
+0

我太快地打電話給你,我爲此道歉。原來,原型覆蓋了$()運算符,所以當我以爲我使用jQuery時,它實際上是原型,這就是爲什麼我嘗試使用的方法都不是。要一起使用這兩個,我把var $ j = jQuery.noConflict()放在我的application.js文件的頂部 – Teddy 2010-07-07 23:49:21

+0

是的,我的直覺是有些正確的。很高興你解決了它。 :) – galambalazs 2010-07-08 09:38:00

相關問題