3

我只想问如何从我的 ajax 请求中预览数据?我只想知道数据是否正确。

这是我的代码。

<script type="text/javascript">

            var globalBase_Url = "{$base_url}" + "index.php/user_controller/processAdd/";   

            //alert(globalBase_Url);

            {literal}

                $(document).ready(function(){

                    $('#add_cat').on('click',function(){
                        $('#add_category').show('slide');
                    });

                    $('#submit').on('click',function(){

                        var name = $('#category_name').val();
                        var desc = $('#description').val();

                        console.log(globalBase_Url);

                        $.ajax({
                            type: 'POST',
                            url: globalBAse_Url,
                            data: {cat_name:name,cat_desc:desc}, //How can I preview this?
                            dataType: 'json',
                            async: false,
                            success: function(d){

                            }
                        });

                    });

                });

            {/literal}


        </script>

在我的控制器中,我有这个。

public function processAdd(){

        $cat_name = $this->input->post('cat_name');
        $cat_desc = $this->input->post('cat_desc');



 }

我使用了 chrome 开发者工具并在 XHR 中预览了它的响应。但我没有看到我的数据。顺便说一句,我正在使用 CodeIgniter

4

3 回答 3

7

在您的控制器中:

你应该有这样的东西

public function processAdd(){


  if($this->input->post()){

   //do something
   $var1 = $this->input->post('cat_name');
   $var2 = $this->input->post('cat_desc');

   echo json_encode(array('status' => 'ok')); //must be encode with array to access it in your response as an object since you use DataType:json
  }

}

然后在你的ajax中,访问响应

 $.ajax({
  type: 'POST',
  url: '/controllers/processAdd',
  data: {cat_name:name,cat_desc:desc}, //How can I preview this?
  dataType: 'json',
  async: false, //This is deprecated in the latest version of jquery must use now callbacks
  success: function(d){
   alert(d.status); //will alert ok
  }
});
于 2013-11-11T08:39:59.833 回答
2

您可以使用浏览器开发者工具 > 网络

Chrome:开发者工具
FireFox:开发者工具-网络/ Fire Bug ->网络

或者

在 ajax 成功处理程序中,将数据记录到控制台

success: function(d){
    console.log(d);// then look at the developer tools -> console
}
于 2013-11-11T08:33:20.660 回答
1

试着把

    var globalBase_Url = "{$base_url}" + "index.php/user_controller/processAdd/"; 

{literal} 标签内

于 2013-11-11T08:45:00.830 回答