0
我正在請求一些JSON的自動完成功能。不幸的是,JSON是用一個html span標籤包裝的。發生這種情況是由於在VB中編寫的後端庫很差,這在接下來的幾個月內並未由運營商更改。所以我必須以另一種方式擺脫html span標籤。這裏是我的JS電話和迴應:jQuery JSON響應封裝在HTML
module.props.functions.ajaxSearchon = function (currVal) {
// Search on Type
$.ajax({
url: module.props.apiURLs.searchOnType + '?query=' + currVal + '&lang=' + module.props.lang,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
module.state = {
searchResult: result,
searchQuery: currVal
};
},
error: function (xhr, status, error) {
module.state = $.extend(module.state, {
searchResults: 'no results found'
});
console.log("error", module.state);
},
complete: function() {
module.props.functions.refreshSearchResults();
}
})
};
它作品反應很好,形成良好的JSON。但是,我的迴應是這樣的:
<span id="fromContext">
{
"results": [
{
"headline": "headline text",
"summary": " <em>summary</em> result text",
"url": "/url/to/page",
"image": {
"url": "/media.jpg",
"alt": "media alt text"
},
"count": ""
},
{
"headline": "empty object"
}
],
"hasmore": true
}
</span>
所以,我將能夠探測範圍(因爲它有一個ID),但我不知道如何訪問與Ajax請求的整個響應的JSON部分。我認爲這個主要問題是,ajax調用導致錯誤,因爲響應不是JSON ... 任何想法如何解決這個問題?