Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery附加在IE中失败_Javascript_Jquery_Internet Explorer_Object_Append - Fatal编程技术网

Javascript jQuery附加在IE中失败

Javascript jQuery附加在IE中失败,javascript,jquery,internet-explorer,object,append,Javascript,Jquery,Internet Explorer,Object,Append,我想把这个对象附加到我的部门医生列表中 Firefox、Chrome都很有魅力,但IE都失败了。控制台中不显示任何错误 $.each(sorteddoctorsArray[i2], function(idx, val) { if ( !$.browser.msie ) { $('div#doctors-list').append(val)

我想把这个对象附加到我的部门医生列表中

Firefox、Chrome都很有魅力,但IE都失败了。控制台中不显示任何错误

$.each(sorteddoctorsArray[i2], function(idx, val) {                 

     if ( !$.browser.msie ) {                                               
          $('div#doctors-list').append(val);
     }else{
          console.log(val);
          // this logs [object Object]
           $('div#doctors-list').append(val); // fails
     }  
});
有什么建议吗

在IE和firefox中打开它以查看差异

试试:

$('div#doctors-list').html($('div#doctors-list').html()+val);

很难说你什么时候禁用IE代码(它现在被注释掉了)

但到目前为止,我看到了一个问题(在您发布的代码上方几行):


prioritysorteddoctorsArray都是本机数组,您不应该在中使用
for…遍历本机数组,始终使用
for(var i=0;ii如果它在所有版本的IE中都失败,这意味着您可以使用内置于IE8和IE9中的开发人员工具来浏览代码并查看出了什么问题。您看到了任何错误吗?当运行append调用时,DOM会发生什么情况?基本上,
append
在所有版本的IE中都可以正常工作,这意味着没有任何问题但是好的老式调试,我们不能为您做,而不是从您发布的内容中。控制台中没有错误。jQuery append和ie问题往往没有错误。它只是没有附加。@musdy:再次声明:没有什么,只是使用开发工具浏览代码。@musdy:指向实时代码的链接可以很好地附加到问题,但您确实需要需要引用问题本身中的所有相关代码。在上面,您刚刚引用了在IE上可以正常工作的代码;在标记和/或代码的其他地方,还有其他一些事情在发生——不仅仅是因为堆栈溢出的目的不仅仅是帮助您,而是帮助其他人在将来处理相同或类似的问题,以及外部网站的内容往往会改变/移动/消失。(例如,您已经更改了链接到的代码。)这会将[object object]打印出来。即使
val
是一个字符串(从他的问题中我们知道它不是),这仍然是一种非常糟糕的附加方式,尤其是因为它做了大量不必要的工作,并清除了连接到相关
div
中任何内容的任何事件处理程序。而且,我们知道
val
不是字符串,因此这只是附加“[object object]”这是因为val也是对象,那么这应该是:$('div#doctors list').html($('div#doctors list').html()+val.html());@T.J.Crowder还有什么更好的方法呢?认为val是对象。@AshkanMobayenKhiabani没有做任何事情。仍然没有追加。
$('div#doctors-list').html('');
            for(var i in priority){

                for(var i2 in sorteddoctorsArray){