错误400 JQuery + Yii

时间:2013-05-02 08:56:38

标签: php jquery ajax yii

我在我的视图中有一个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.'));
    }

}

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您期待json数据,但是您将空页发送到浏览器。您应该对结果进行编码:

echo CJavascript::jsonEncode((bool)$flag);
Yii::app()->end();

在您的代码中,您返回了值。请注意,您的yii异常消息是不允许直接访问,但您的错误是您的请求无效。