所以,这是一个相当简单的事情,我试图完成(JavaScript),但它花了我很多时间,它仍然无法正常工作。我试图替换某些单词(在预标签内)。例如,字"static"
应替换为 "<span class="keyword">static</span>"
。我严格使用XHTML。替换innerHTML中的字符串
我的做法是这样的:
for (var j = 0; j < keywords.length; j++)
{
codeBlock.innerHTML = codeBlock.innerHTML.replace(new RegExp(keywords[j], "g"), "<span class=\"keyword\">" + keywords[j] + "</span>");
}
代码块pre元素,关键词是包含所有我想替换单词的数组。
我已经尝试了很多方法,但我被这些错误消息卡住了。
火狐:
[Exception... "An invalid or illegal string was specified" code: "12" nsresult: "0x8053000c (NS_ERROR_DOM_SYNTAX_ERR)" location: "file:///C:/.../scripts.js Line: 33"]
铬:
Error: INVALID_STATE_ERR: DOM Exception 11
我猜它有什么用html标签做(我使用LT%尝试;和%GT;相反) ,因为我知道这样做的工作:
codeBlock.innerHTML = codeBlock.innerHTML.replace(new RegExp(keywords[j], "g"), "test");
感谢您的时间, Jacco
我认为你不能使用(套)'innerHTML'与XHTML(严格)。 – 2011-05-10 20:11:36
任何机会,你可以发布一个完整的HTML和JavaScript的例子,展示这个问题? – 2011-05-10 20:41:50