musdy
musdy

Reputation: 541

jQuery append fail in IE

I have this object that I would like to append to my div#doctors-list.

Firefox,Chrome work like a charm.But all IE fail. No errors are shown in the console.

$.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
     }  
});

any suggestions?

open it in IE and firefox to see the difference

Upvotes: 0

Views: 350

Answers (2)

Dr.Molle
Dr.Molle

Reputation: 117334

It's hard to say when you disable the IE-Code(it currently is commented out).

But one issue I see so far(a few lines above the code posted by you) :

$('div#doctors-list').html('');
            for(var i in priority){

                for(var i2 in sorteddoctorsArray){

Both, priority and sorteddoctorsArray are native Arrays, you should never walk native Arrays by using for...in, always use for(var i=0;i<array.length;++i)

The for...in -Syntax will walk trough all members of an object. Also the build-in Array-members, e.g. length , will be fetched, what may result in errors.

Upvotes: 0

Ashkan Mobayen Khiabani
Ashkan Mobayen Khiabani

Reputation: 34150

try:

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

Upvotes: 1

Related Questions