我正在尝试向 div 添加 ajax 响应(它是带有表格、表单等的 HTML 代码)。
在 FF innerHTML
中完美运行,但在 IE 中它给了我一个未知错误。
我尝试了很多东西,但只有当我添加 jQuery 并在要插入代码的 div 上运行 .html
方法时,我才让它工作。
有人想解释为什么这行得通而不是简单的 innerHTML
吗?我试着查看 .html()
代码,但我想我不擅长 JS,因为我不明白它在做什么。
最佳答案
IE 有几个记录(pre | table (thead, tbody, tr, tfoot) | div | select ).innerHTML 错误。
因此像 jQuery 这样的库通过在 IE 需要的地方应用解决方法,为您消除这些错误。
至于你的具体错误...没有看到代码很难说。
在 pre、某些 div、select 上设置 .innerHTML
(如果失败,将静默失败)但设置 .innerHTML
在某些表格元素上(在某些版本的 IE 中)实际上会抛出错误/异常。
注意:设置 div 的 .innerHTML
的问题在条件上非常特殊,只发生在 IE6 和 IE7 中。
关于javascript - 为什么 .html 有效而不是 innerHTML 或 appendChild,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1848588/