在我的 View 中,我有一个 AJAX 调用到我的 Controller 中的一个 Action 。但是,我总是收到错误 400。下面是我的 AJAX 调用的代码:
$.ajax({
cache: false,
url: '/dummy/index.php/module/controller/checkCross',
dataType: 'json',
type: 'POST',
data : {"male":parents[0],"female":parents[1]},
success: function(result){
alert(result);
}
});
Controller 中的代码如下:
public function actionCheckCross(){
if(Yii::app()->request->isPostRequest) { // check if POST
$flag = CrossingMatrix::model()->checkParentsIfCrossed($_POST['male'],$_POST['female']);
if($flag){
return true;
}
else{
return false;
}
} else { // direct URL request will be GET, so show error
throw new CHttpException(400, Yii::t('app', 'Direct access is not allowed.'));
}
}
有什么想法吗?
最佳答案
您需要 json 数据,但您向浏览器发送了空页面。你应该这样编码结果:
echo CJavascript::jsonEncode((bool)$flag);
Yii::app()->end();
在您的代码中,您返回了值。请注意,您的 yii 异常消息是不允许直接访问,但您的错误是您的请求无效。
关于php - 错误 400,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16333989/