有很多帖子让人们问这个......但是当他们使用ajax请求进行跨域连接时,似乎大多数都有问题。我只是在同一个域上使用它,但仍无法设法让ajax请求在我的移动浏览器上运行...但它在桌面浏览器上完美运行。
这是我正在使用的代码:
Ajax Call
$.ajax({
type: 'POST',
url: '/test/Stores/storeCheck',
data: $input,
dataType: 'json',
contentType: "application/x-www-form-urlencoded;charset=utf-8",
success: function (data) {
alert("success");
},
error:function (xhr) {
alert("failed");
}
});
PHP控制器(cakephp)
function storeCheck () {
if ($this->request->is('ajax')) {
//Selecting values from the DB and returning them in $result
$this->autoRender = false;
return (json_encode($result));
}
}
在我的移动浏览器中发出ajax请求,直到它到达显示失败警报弹出窗口的错误事件为止。我尝试过使用JSONP,但没有成功。任何想法都会受到高度赞赏。
BR, 甲
答案 0 :(得分:0)
我设法解决了这个问题。我在控制器功能中使用了echo而不是return。我还在控制器中调试了我的ajax请求:
function storeCheck () {
if ($this->request->is('ajax')) {
Configure::write('debug', 0);
//Selecting values from the DB and returning them in $result
$this->autoRender = false;
echo json_encode($result);
}
}