所以,这是发生了什么。
我有一个AJAX调用,它应该返回一个JSON对象数组。
AJAX调用如下所示:
ajax : function( url , data, success ){
return $.ajax( {
url : url,
type : 'POST',
data : data,
dataType : 'json',
success : function( data ){ success( data ); },
error : function( jqXHR , textStatus , errorThrown )
{
console.log( errorThrown );
}
} );
}
调用该函数是这样的:
this.tvModelsAjax = this.ajax( sanus_website_search.tvModelAutocomplete,
{q : autoCompleteController.query },
autoCompleteController.success );
如果您在浏览器中打开它,返回的数据将如下所示:
[{"name":"SAMSUNG 40\" 400BX","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400BX\/results\/"},{"name":"SAMSUNG 40\" 400CX","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400CX\/results\/"},{"name":"SAMSUNG 40\" 400CX1","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400CX1\/results\/"},{"name":"SAMSUNG 40\" 400CX2","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400CX2\/results\/"},{"name":"SAMSUNG 40\" 400CXN","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400CXN\/results\/"},{"name":"SAMSUNG 40\" 400CXN1","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400CXN1\/results\/"},{"name":"SAMSUNG 40\" 400CXN2","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400CXN2\/results\/"},{"name":"SAMSUNG 40\" 400DX","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400DX\/results\/"},{"name":"SAMSUNG 40\" 400DX2","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400DX2\/results\/"},{"name":"SAMSUNG 40\" 400DX3","url":"\/app_dev.php\/en_US\/mountfinder\/SAMSUNG\/40%22\/400DX3\/results\/"}]
但是jQuery正在抛出一个错误,告诉我我有一个意想不到的"<"在某个地方......令我感到茫然。
有什么想法吗?
答案 0 :(得分:0)
民间,
似乎我正在查询的PHP期待GET方法,而不是像该页面上的其他调用那样的POST。我最后添加了一个'方法' ajax方法的参数。结果如下。谢谢你的帮助!
ajax:function(url,data,success,method =' POST'){
return $.ajax( {
url : url,
type : method,
data : data,
dataType : 'json',
success : function( data ){ success( data ); },
error : function( jqXHR , textStatus , errorThrown )
{
console.log( errorThrown );
}
} );
}