2011-06-22 17 views
0
var append = $('<li class="ui-widget-content" id="list-'+num+'">'+content+'</li>'); 
console.log(append); // LOG: [object Object] 
console.log(append.html()); // LOG: null 

NULLであるIE 8は、オブジェクトとしてvar append作成するが、そのHTMLコンテンツはnullあります。他のブラウザでもうまく動作します。私はここで何が問題か分かりません。何か案は? //編集//要素/オブジェクトInternet Explorerで

var content

は、この文字列が問題である。この

<div class="item status-0 filiale-2" id="item-18"> 
      <div class="ui-corner-all date ui-state-active"> 
      <div class="filiale">D&uuml;ren</div> 
      <div class="left date-add">22.06.2011 15:02:24 Uhr</div> 
      <div class="clear"></div> 
      </div> 
       <div class="clear"></div> 
      </div> 
      <div> 
      <form id="form-order-18" action="""> 
       <input type="hidden" id="list-id" name="id" value="18" > 
       <div class="relative left artikel"><input type="text" class="text ui-corner-all ui-widget-content autocomplete" id="list-artikel-18" name="artikel" value="79949 | ASUS Eee PC 1001PXD-BLK028S 25.65cm/N455/1" /></div> 
       <div class="relative left qty"> <input type="text" class="text ui-corner-all ui-widget-content" id="list-qty-18" name="qty" value="1" /></div> 
       <div class="relative left comment"><input type="text" class="text ui-corner-all ui-widget-content" id="list-comment-18" name="comment" value="kunde wünscht ungeöffnetes" /></div> 
       <div class="relative left"> 
       <button type="button" class="item-edit" opt:icon="ui-icon-disk" opt:text="false">&Auml;nderungen speichern</button> 
       <button type="button" class="item-del" item:id="18" opt:icon="ui-icon-trash" opt:text="false">Bestellung L&ouml;schen</button> 
       </div> 
      </form> 
      </div> 
      <div> 
      <form id="form-sendorder-18"> 
       <input type="hidden" name="action" value="sendorder" /> 
       <input type="hidden" id="order-id" name="id" value="18" > 
       <div class="relative left salesman"> 
       <label for="order-artikel-18" class="ui-state-disabled text">Händler</label> 
       <input type="text" class="text ui-corner-all ui-widget-content acsalesman inlinefield" id="order-artikel-18" name="salesman" value="" /> 
       </div> 
       <div class="relative left dateexpected"> 
       <label for="order-list-date-expected-18" class="ui-state-disabled text">erwartet am</label> 
       <input type="text" class="text ui-corner-all ui-widget-content inlinefield datepicker" id="order-list-date-expected-18" name="date_expected" value="" /> 
       </div> 
       <div class="relative left comment"> 
       <label for="order-comment-18" class="ui-state-disabled text">Kommentar für Filiale</label> 
       <input type="text" class="text ui-corner-all ui-widget-content inlinefield" id="order-comment-18" name="comment_o" value="" /></div> 
       <div class="relative left"> 
       <button type="button" class="item-order" opt:icon="ui-icon-cart" opt:text="false" item:id="18">Ware Bestellt</button> 
       </div> 
      </form> 
      </div> 
      <div class="clear"></div> 

のように、AJAX応答のHTML文字列です。この文字列を使わないでhtmlを設定すると、動作します。

var append = $('<li class="ui-widget-content" id="list-'+num+'">foobar</li>'); 
console.log(append); // LOG: [object Object] 
console.log(append.html()); // LOG: foobar 

おかげ&に関して、jQueryので

アレックス

+0

'content'は何ですか?そして、どのIE? 10があります。 [IE8で私のために働く](http://jsfiddle.net/a698W/)。 –

+0

IE8で再生できません。 – DanielB

+0

'console.log(append);を' alert(append); 'に切り替えてみてください。他のconsole.logと同じです。私はIEのいくつかのバージョンがconsole.logで胸焼けをしているのを見ました。試すだけの価値があります;それは簡単ですし、問題の絞り込みに役立つかもしれません。 –

答えて

0

の.html()は、通常のブラウザ(例えばFF、クローム)で、それはそれを得る必要があることを意味しinnerHTMLプロパティの同等の()であり、 IEでは、outerHTMLプロパティを使用する必要があります。

私は完全に要素を取得するために、outerHTML jQueryプラグインを使用して試してみた:http://yelotofu.com/2008/08/jquery-outerhtml/

はそれが役に立てば幸い:)