当 ajax 调用 laravel 时,我应该如何传递所需的查询


How should I pass desired query when ajax call in laravel

这是我的脚本代码:

 $(document).ready(function()
    {
      $( ".iCheck-helper" ).on( "click", function(){
            var sel = $('.i-check:checked').map(function(_, el) {
                    return $(el).val();
                }).get();
              // alert(sel);
              var value = this.value;
              var city_name =<?php echo json_encode($city_name) ?>;
              var start =<?php echo json_encode($start)?>;
              var end =<?php echo json_encode($end)?>;
              var room_count =<?php echo json_encode($room_count)?>;
              var member_count =<?php echo json_encode($member_count)?>;
              var selt_guest =<?php echo json_encode($selt_guest)?>;
              var selt_room =<?php echo json_encode($selt_room)?>;
              // alert(city_name);
              $.ajax({
                // alert();
                type: "POST",
                url: "hotelresults",
                data: {
                    key : sel,
                    search_city:city_name,
                    start:start,
                    end:end,
                    selt_guest:selt_guest,
                    selt_room:selt_room,
                    room_nf:room_count,
                    guest_nf:member_count,
                    ajx:'kik'
                },
                success: function (data) {
                    $('.hotel_list').html(data);
                }
            });
      });
    });

Ajax 调用控制器:

 if(isset($_POST['ajx'])){
                $key1=$_POST['key'];
                // echo $key[0];exit;
                $this->data['key']=$key1;
                return view('hotel.list', $this->data);
$sqlCond = 'WHERE 1 '.$this->getkeycondition($_POST['key']);
            }

在这里,我想只在我的 ajax 函数调用时传递上面给出的查询。如何仅在我的 Ajax 调用时传递此条件查询。请有人帮助我..

将请求类作为方法的第一个参数注入,您可以使用它的方法检查请求是否通过 AJAX 发出。

public function index(Request $request)
{
    if($request->ajax()){
        return "AJAX";
    }
    return "HTTP";
}

不要忘记在控制器顶部添加别名。

use Illuminate'Http'Request;