IE9使用html标签设置textarea的innerHTML

时间:2011-03-31 17:26:32

标签: internet-explorer-9 innerhtml

我有这个字段

在IE9中,以下行给出了错误“SCRIPT601:未知的运行时错误” //选项1。 document.getElementById('code')。innerHTML ='some text';

当我将行更改为时,错误消失并且似乎有效(分配空值): //选项2 document.getElementById('code')。innerHTML ='';

我试过这个: //选项3。 document.getElementById('code')。innerHTML = escape('some text');

然后HTML被转义,这不是我想要的,我希望这个确切的字符串放在文本框中。

在Chrome和Firefox中,选项1中的代码可以正常运行。

我该怎么做才能解决这个问题?

3 个答案:

答案 0 :(得分:1)

您应该设置value property

答案 1 :(得分:0)

猜测一下,您的网页是否有<!DOCTYPE html>或类似内容?

http://blogs.msdn.com/b/ie/archive/2011/03/24/ie9-s-document-modes-and-javascript.aspx

答案 2 :(得分:0)

在IE9怪癖模式下,接受的解决方案将无效。

由于您可能尝试为innerHtml设置<p>,因此如果您将<p>替换为<div>,则会有效。

致谢:Theo Gray,http://www.theogray.com/blog/2009/06/internet-explorer-unknown-runtime-error