打印

innerHTML中的双引号哪去了?[IE BUG]



 提示:您可以先修改部分代码再运行
如上述代码,在IE中弹出innerHTML取得的代码时一部分标签的属性值自动去掉了双引号,而一部分则有,在FIREFOX中无此现象。
因要录入符合XHTML标准的内容,碰到此问题真是郁闷~~
呵呵...

恭喜~恭喜~~~
这不是 bug.
1. innerHTML 是一个 runtime property, 它返回的是运行时(在这里是浏览器完成渲染时)的值;
2. 用 innerHTML 得到的就是 HTML 呗, 它并不是 innerXML 或者 innerXHTML;
山有木兮木有枝,心悦君兮君不知.
要是获得,最好用“outHtml”
F2

TOP

LeXRus在上个帖子中说
引用:
这不是 bug.
1. innerHTML 是一个 runtime property, 它返回的是运行时(在这里是浏览器完成渲染时)的值;
2. 用 innerHTML 得到的就是 HTML 呗, 它并不是 innerXML 或者 innerXHTML;
DHTML手册上是这么定义的:
Sets or retrieves the HTML between the start and end tags of the object.

返回的是两个闭合标记间的HTML源代码,绝对不会是运行时的值

且不管其是否BUG,有办法解决这个问题就行! 知道的说一声~~~

TOP

看来我说的两点你都没明白.

<body><table><td>hello world</table></body>
你可以看看这段 html 被渲染后的 innerHTML, 想一想为什么会多出 tbody 和 tr; 再看看你的 firefox 是不是也这样; 再回过头来重新理解什么叫运行时属性, 而不是使用"绝对不会是..."这种武断的句式来讨论问题.
山有木兮木有枝,心悦君兮君不知.

TOP