2011-01-31 36 views
1

以下代碼返回所有主要瀏覽器(IE除外)中data變量中包含的所選元素的html。對變量的jQuery查詢在IE中失敗

$("#blapp", data).html(); 

有誰知道爲什麼?

解決方法是將data插入到DOM中,選擇所需數據,然後刪除臨時數據。我想知道是否有人知道更好的解決方案?

+0

你爲什麼不發佈你的'SELECTOR'是什麼? – ThiefMaster 2011-01-31 23:31:40

+1

你可以發佈`data`的內容嗎?也許IE無法處理的一些無效標記? – user113716 2011-01-31 23:32:38

回答

0

我有一種直覺,data是一個完整的HTML文檔。如果是這樣,當試圖將jQuery對象從其中取出時,瀏覽器之間會得到不同的結果。

如果是這樣的話,試試這個來代替:

$('<div>' + data + '</div>').find('#blapp').html(); 

另一種選擇是使用.find().filter(),而不是(這您是通過上下文參數現在做的)嘗試。儘管這可能會導致它在某些瀏覽器中停止工作。

$(data).filter('#blapp').html();