我在我的视图中有一个AJAX调用来控制我的操作。但是,我总是得到一个错误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);
}
});
以下是控制器中的代码:
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.'));
}
}
有什么想法吗?
答案 0 :(得分:2)
您期待json数据,但是您将空页发送到浏览器。您应该对结果进行编码:
echo CJavascript::jsonEncode((bool)$flag);
Yii::app()->end();
在您的代码中,您返回了值。请注意,您的yii异常消息是不允许直接访问,但您的错误是您的请求无效。