手机版

IE6-IE9使用JSON和table.innerHTML导致的问题

时间:2021-09-20 来源:互联网 编辑:宝哥软件园 浏览:

1.在IE兼容模式和与IE内核兼容的浏览器模式下,在jQuery中使用JSON函数时出现“JSON未定义”,但切换到浏览器高速模式时正常显示。

解决方案:

1.直接将json2 . js(https://github.com/Douglas Crockford/JSON-js/blob/master/json2 . js)引入到使用过的页面中。将不再描述引入方法。

2.判断在公共页面的js方法。

if(类型为JSON=='undefined'){ $('head ')。追加($(“脚本类型=”text/JavaScript“src=”./json2 . js ' ');//这里的位置是js文件所在的路径。}第二,在使用ajax时,往往需要动态生成页面元素,并用元素上的innerHTML属性填充页面HTML。但是,当发现table元素的innerHTML在使用中时,在firefox中是不错的,但是在ie兼容模式中有一个未知的运行时错误。错误示例如下:

在IE6-IE9下,下列元素表的innerHTML属性是只读的,它们是:thead、tfoot、tbody、tr、col、colgroup、HTML、title、style和frameset。

解决方法:调用以下js方法。

函数可设置的内部html (table,html) {//table是table对象,html是生成的html字符串if(navigator . navigator . user agent . match(/msie/I)){ var temp=table . ownerdocument . create element(' div ');temp . innerHTMl=' table ' HTMl '/table ';//注意这里传入的html变量包含“tbody/tbody”标签;如果在HTML变量中不存在,则为' table t body ' HTML '/t body/table ' table . replace child(temp . first child . first child,table . t body[0]);//用生成的div} else {table.innerhtml=html中的tbody替换原始表中的t body;}}以上内容是IE6-IE9中使用JSON和table.innerHTML带来的问题,大家分享一下。希望大家都喜欢。

版权声明:IE6-IE9使用JSON和table.innerHTML导致的问题是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。