zoukankan      html  css  js  c++  java
  • 关于document.all.item遇到IE8时无法正常取到数据

    最近发现项目中遇到这样一个情况,以前系统在IE6下是好的,但是在IE8下有些输入框就出现数据拿不到等情况,后来发现在IE8下有很多表达式都是不能用的,包括现在说到的documen.all.item()拿到的对象总是为空,经过仔细收集资料发现原来这个doctype有关

    当你点击按钮,文本框会赋值吗?
    如果你用IE6,我可以肯定的告诉你,会...
    但是你如果用IE8打开,肯定是不会的...
    不信可以试试。
    有两个解决办法,一个是在doctype前加一句<!-- --->
    另一个就是将doctype注释起来或去掉。这两个方法取得的效果是一样的,为什么呢?
    在doctype前加注释语句块,可以将doctype的功能取缔,因为doctype必须位于html的第一行,放在第二行就失去了意义,第二个方法就不用说了。
    如果你也有同样的问题,你可以检查一下你的jsp,很可能你在jsp中doctype不是写在第一行,但是你查看源文件,很可能doctype就在第一行出现,所以咱们以后编写html就要注意了。
    为什么加了doctype就不支持了呢,首先document.all.item本身就不是w3c推出的标准,只是一个微软搞得一套东东,现在微软想在IE8中不维护这个了,所以就搞得现在不支持了。
    所以咱们以后写程序一定要用w3c的标准,用document.getElementsByName()[0]代替它
    。相信这个不会不支持的。

    人生目标:50岁时财务自由,周游世界@
  • 相关阅读:
    131. Palindrome Partitioning
    130. Surrounded Regions
    129. Sum Root to Leaf Numbers
    128. Longest Consecutive Sequence
    125. Valid Palindrome
    124. Binary Tree Maximum Path Sum
    122. Best Time to Buy and Sell Stock II
    121. Best Time to Buy and Sell Stock
    120. Triangle
    119. Pascal's Triangle II
  • 原文地址:https://www.cnblogs.com/relix/p/4597689.html
Copyright © 2011-2022 走看看