2013-06-25 96 views
1

我在Jquery中調用了一個Ajax,它返回了很多不需要的HTML。我試圖過濾出我想要的那部分,但控制檯只是說空字符串?請有人指出我正確的方向。Ajax jquery filter部分的html

$.ajax({ 
    url: "urlencode.php", 
    data: data, 
    type: "POST", 
    success: function (data) { 
     var myd = $(data).filter("#Result").text(); 
     console.log(myd) 
    }, 

    error: function (request, status, error) { 
     alert(request.responseText); 
    } 
}); 
+0

你檢查爲什麼它返回不需要HTML – zod

回答

2

您可以將HTML數據元素傳遞給一個動態的div,找到你的#Result裏面之後。
隨着find()方法可以讓你通過DOM樹這些元素的後代搜索
嘗試是這樣的:

$.ajax({ 
    url:"urlencode.php", 
    data: data, 
    type: "POST", 
    success: function (data) { 
     var myd = $('<div />').html(data).find("#Result").text(); 
     console.log(myd) 
    }, 

    error: function (request, status, error) { 
     alert(request.responseText); 
    } 
}); 
+0

謝謝,明白了! –

+0

歡迎您! @JasonMillington –

1

jQuery可以自動執行此操作。在您的url參數中,只需使用"urlencode.php #Result"

編輯:忘記提及此作品如果您使用.load

對於你的情況,請嘗試:

success: function (data) { 
    var myd = $($.parseHTML(data)).filter("#Result").text(); 
    console.log(myd) 
}, 
+2

只有當你使用'.load() ' – adeneo

+0

對不起,更新了答案。 –