Yii控制器中$ _POST [“var”]的问题

时间:2015-02-05 12:34:12

标签: javascript php json post yii

我在控制器上遇到了$ _POST [" var"]的问题。它似乎是空的。如何才能收到我在textFiled上输入的字符串?

查看

<?php Yii::app()->clientScript->registerCoreScript("jquery"); ?>
                <script type="text/javascript">
                $(document).ready(function(){
                        $("#hhmm").change(function(){
                        $.ajax({
                      url: "<?php echo CController::createUrl('reqTest01Loading'); ?>",
                                data: $(this).serialize(),
                                type: "post",
                                dataType: "json",
                                success: function(data) {
                                      if (data.status === 'failure') {
                                            $('#impatto').val('Error request failed.');
                                         } else {
                                                 $("#impatto").html(data.total);     
                                         } 

                                }
                        });
                        });

                });
                </script>

控制器

public function actionReqTest01Loading() {

    $result = array("total" => $_POST['hhmm'], "status"=>"OK");
            echo CJSON::encode($result);
}
关于控制器的

规则

array('allow',  // allow all users to perform 'index' and 'view' actions
            'actions'=>array('reqTest01Loading','index','view','admin'),
            'users'=>array('@'),
        ),

first of click impatto calcolo after of click impatto calcolo

提前致谢

1 个答案:

答案 0 :(得分:0)

这是因为你没有告诉ajax调用发送参数。

尝试:

    $.ajax({
    url: "<?php echo CController::createUrl('reqTest01Loading'); ?>",
       data: {data:$(this).serialize()},
       type: "post",
       dataType: "json",
       success: function(data) {
           if (data.status === 'failure') {
              $('#impatto').val('Error request failed.');
           } else {
              $("#impatto").html(data.total);     
           } 

        }
   });

它是控制器:

public function actionReqTest01Loading() {
    // var_dump(Yii::app()->request->getPost('data'));
    $result = array("total" => Yii::app()->request->getPost('data'), "status"=>"OK");
    echo CJSON::encode($result);
}