IE6-IE9使用JSON、table.innerHTML所引发的问题


Posted in Javascript onDecember 22, 2015

 一、在IE兼容模式中以及各具有IE内核的浏览器兼容模式中使用  jQuery 中的JSON函数时出现“JSON未定义”  而切换到浏览器高速模式则正常显示

解决方案 :

1.直接在使用的页面中引入json2.js (https://github.com/douglascrockford/JSON-js/blob/master/json2.js)引入方法不再赘述。

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

if(typeof JSON == 'undefined'){ 

$('head').append($("<script type='text/javascript' src='.../json2.js'>")); //此处的位置为该js文件所在路径

}

二、使用ajax时,经常需要动态生成页面元素,而使用element上属性innerHTML填充页面HTML。但是在使用中发现 table元素的innerHTML时赋值时,在firefox下是好的,但在ie兼容模式中出现未知的运行时错误。错误示例如下:

 IE6-IE9使用JSON、table.innerHTML所引发的问题

发现是在IE6-IE9下,下列元素table,thead,tfoot,tbody,tr,col,colgroup,html,title,style,frameset的innerHTML属性是只读的

解决方法:调用下面js方法

function setTableInnerHTML(table, html) {//table 为table对象,html为生成的html字符串
  if (navigator && navigator.userAgent.match(/msie/i)) {
    var temp = table.ownerDocument.createElement('div');
    temp.innerHTML = '<table>' + html + '</table>';//注意此处传进来的html变量包含“<tbody></tbody>”标签  如果HTML变量中没有 则为 '<table><tbody>' + html + '</tbody></table>'
    table.replaceChild(temp.firstChild.firstChild, table.tBodies[0]);//用生成的div中table的tbody替换原table中的tbody
  } else {
    table.innerHTML = html;
  }
}

以上内容是小编给大家分享的IE6-IE9使用JSON、table.innerHTML所引发的问题,希望大家喜欢。

Javascript 相关文章推荐
javascript onmouseout 解决办法
Jul 17 Javascript
javascript中onmouse事件在div中失效问题的解决方法
Jan 09 Javascript
js渐变显示渐变消失示例代码
Aug 01 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
Aug 24 Javascript
jquery.picsign图片标注组件实例详解
Feb 02 jQuery
vue项目中引入noVNC远程桌面的方法
Mar 05 Javascript
JS使用new操作符创建对象的方法分析
May 30 Javascript
Vue 实现前端权限控制的示例代码
Jul 09 Javascript
bootstrap table实现横向合并与纵向合并
Jul 18 Javascript
jquery.pager.js实现分页效果
Jul 29 jQuery
JS如何判断对象是否包含某个属性
Aug 29 Javascript
如何编写一个 Webpack Loader的实现
Oct 18 Javascript
JavaScript+CSS无限极分类效果完整实现方法
Dec 22 #Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
Dec 22 #Javascript
JS控制按钮10秒钟后可用的方法
Dec 22 #Javascript
js实现C#的StringBuilder效果完整实例
Dec 22 #Javascript
JavaScript判断对象是否为数组
Dec 22 #Javascript
javascript中类的定义方式详解(四种方式)
Dec 22 #Javascript
jquery获取select选中值的方法分析
Dec 22 #Javascript
You might like
PHP 和 MySQL 开发的 8 个技巧
2006/10/09 PHP
PHP获取当前页面完整URL的实现代码
2013/06/10 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
php计算数组相同值出现次数的代码(array_count_values)
2015/01/20 PHP
浅析php设计模式之数据对象映射模式
2016/03/03 PHP
PHP抓取及分析网页的方法详解
2016/04/26 PHP
PHP yii实现model添加默认值的方法(两种方法)
2016/11/10 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
thinkphp分页集成实例
2017/07/24 PHP
Chrome中模态对话框showModalDialog返回值问题的解决方法
2010/05/25 Javascript
Jquery知识点三 jquery表单对象操作
2011/01/17 Javascript
jquery实现excel导出的方法
2013/04/04 Javascript
为jquery的ajaxfileupload增加附加参数的方法
2014/03/04 Javascript
node.js使用nodemailer发送邮件实例
2014/03/10 Javascript
jquery实现一个简单好用的弹出框
2014/09/26 Javascript
详解nodejs爬虫程序解决gbk等中文编码问题
2017/04/06 NodeJs
Angularjs 动态添加指令并绑定事件的方法
2017/04/13 Javascript
Angular 4依赖注入学习教程之ValueProvider的使用(七)
2017/06/04 Javascript
angularJs使用ng-repeat遍历后选中某一个的方法
2018/09/30 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
2020/08/14 Javascript
Python常用列表数据结构小结
2014/08/06 Python
Python实现简单HTML表格解析的方法
2015/06/15 Python
Python利用BeautifulSoup解析Html的方法示例
2017/07/30 Python
python 获取键盘输入,同时有超时的功能示例
2018/11/13 Python
Python实现寻找回文数字过程解析
2020/06/09 Python
8款精美的CSS3表单设计(登录表单/下拉选择/按钮附演示及源码)
2013/02/04 HTML / CSS
浅谈react路由传参的几种方式
2021/03/23 Javascript
5个HTML5的常用本地存储方式详解与介绍
2021/03/27 HTML / CSS
大学生优秀团员事迹材料
2014/01/30 职场文书
医学专业应届生的自我评价
2014/02/28 职场文书
小学教师师德师风自我剖析材料
2014/09/29 职场文书
交通事故一次性赔偿协议书范本
2014/11/02 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
主持人开场白台词
2015/05/29 职场文书
党支部培养考察意见
2015/06/02 职场文书
springboot + mongodb 通过经纬度坐标匹配平面区域的方法
2021/11/01 MongoDB