weixin_33713503 2017-08-08 18:55 采纳率: 0%
浏览 180

Ajax请求返回HTML页面

I am trying to send data from an Input to the controller of my application in Laravel, where I supply the category ID and it returns a jSON with the related id's.

I have a input to get data

<label for="categoryMae">Nome da Categoria Mãe</label>
      <input class="form-control" id="getCategoryMae" name="getCategoryMae" />

A script to pass to my controller

<script>
$("#getCategoryMae").blur(function(){
  var cat_id = $(this).val();
  console.log(cat_id);
  $.ajax({
    type: 'GET',
    url: '{{route('getCategoryName')}}',
    data: 'cat_id',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(data){
      console.log(data.cat_id);
    }
  });

});
</script>

and I trying to get this values in my Controller (Route::get('/categories/getCategoryName', 'CategoriesController@getCategoryName')->name('getCategoryName');)

public function getCategoryName(Request $request)
    {
       $data = $request->all();
       dd($data);
    }

But the code returns the HTML structure and not the the value

enter image description here

How return only the value and not all that structure and why that happened? Thanks in advance!

  • 写回答

1条回答 默认 最新

  • derek5. 2017-08-08 19:38
    关注

    I don't think you're sending any data to your controller. Try this, check the data property of the AJAX call.

    <script>
    $("#getCategoryMae").blur(function(){
      var cat_id = $(this).val();
      console.log(cat_id);
    
      var dataObject = {cat_id: cat_id};
      $.ajax({
        type: 'GET',
        url: '{{route('getCategoryName')}}',
        data: dataObject,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(data){
          console.log(data.cat_id);
        }
      });
    
    });
    </script>
    

    Also, I can tell you use Google Chrome, you can make sure you send something to the server, you can click on the Headers, go to the bottom to the Query String Prameters to see the parameters you're sending. Here's a good resource: Chrome Dev Tools

    评论

报告相同问题?