2012-02-06 24 views
-1

我使用$ .post()將結果發送到控制器和模型。它會輸出一個包含所有標籤的整個頁面......,等等。我想處理那些輸出的數據。我怎樣才能做到這一點?對於下面的代碼示例,我想在輸出的數據中獲得id ='myid'的值。

$.post(url, function(data) { 
    alert(data.getElementById('ContentPane').html()); 
}); 

非常感謝。

回答

0
$(data).find('#ContentPane').html() 

並沒有爲我工作,但後來我用

$(data).filter('#ContentPane').html() 

它的工作!謝謝!

+0

我猜你在頁面中有多個元素,而'ContentPane'和'.find'選擇了錯誤的元素。 '.filter'將選擇所有的'ContentPane'ids ..我不會在這個上使用'.filter',如果你有多個具有相同ID的元素,你可能會在某些時候返回錯誤的結果。它更好地使用'.find'並且實際上定義了一個更好的元素路徑。 – 2012-02-18 05:22:35

+0

恩......好的,謝謝 – guitarlass 2012-02-18 05:57:41

+0

我在從此輸出中選擇標記及其屬性時遇到問題。 '$(response).filter('html')'甚至'find()'不起作用。請檢查[this](http://stackoverflow.com/questions/9388596/how-to-process-get-and-catch-html-element-using-jquery) – guitarlass 2012-02-22 03:13:39

0

您必須將返回的HTML代碼轉換爲對象。試着用:

$(data).find('#ContentPane').html() 
0

只要做到以下:

$.post(url, function(data) { 
    alert($(data).find("#ContentPane").html()); 
}); 
0

不知道,但嘗試這個

$(data).find("#ContentPane").html() 

假設ContentPane是要找到從data未來控制器控制。