jQuery ajax 动态append创建表格出现不兼容ie8 | 少将全栈
  • 欢迎访问少将全栈,学会感恩,乐于付出,珍惜缘份,成就彼此、推荐使用最新版火狐浏览器和Chrome浏览器访问本网站。
  • 吐槽,投稿,删稿,交个朋友
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏少将全栈吧

jQuery ajax 动态append创建表格出现不兼容ie8

点滴 admin 8年前 (2016-08-30) 1872次浏览 已收录 扫描二维码

很多情况下,通过js(jQuery1.10)动态来创建一些样式,对页面的动态交互来说是很方便的

但是不同的浏览器针对动态生成的不是很兼容,在此遇见的不兼容ie8,跟各位分享下

代码:

     json数据

data.json

[{“name”:”ajax”,”job”:”manong”},{“name”:”js”,”job”:”diaosi”}]

html页面

<table class=”ajaxappend”>

       <tbody></tbody>

</table>

js文件

$document.ready(function(){

                type:”post”,

success:function(data){

$(“.ajaxappend tbody”).append(“<t r >”);

$(“.ajaxappend thead”).append(“<th>name</th>”);

$(“.ajaxappend thead”).append(“<th> job </th>”) ;

$(“.ajaxappend tbody”).append(“< / t r >”); 

for(int i = 0,l = data.length; i < l; i = i+1){

$(“.ajaxappend tbody”).append(“<t r >”);

for(var key in data[i]){

$(“.ajaxappend tbody”).append(“<td>”+data[i][key]+”</td>”);

$(“.ajaxappend tbody”).append(“< / t r >”);

});

上面的效果在火狐下是能够正常动态生成出表格的

但是在ie8却不行,经过几次验证,推测,ie对动态append的内容有要求,需要将一个具有完整意义的html一起append到代码中

修改如下

$document.ready(function(){

                type:”post”,

success:function(data){

head  = head + “<tr><th>name</th><th>job</th></tr>”;

for(int i = 0,l = data.length; i < l; i = i+1){

                                 body  = body + “<tr>”;

for(var key in data[i]){

      body  = body  + “<td>”+data[i][key]+”</td>”;

body  =   body  + “</tr>”;        

?   $(“.ajaxappend tbody”).append( body );

       

});

这样ie8和火狐下都可以正常显示了

喜欢 (0)
[🍬谢谢你请我吃糖果🍬🍬~]
分享 (0)
关于作者:
少将,关注Web全栈开发、项目管理,持续不断的学习、努力成为一个更棒的开发,做最好的自己,让世界因你不同。