如何使用 AJAX 和 JSON 显示所有记录


how to show all record with AJAX and JSON

我使用Laravel 4.2.0。 我想创建表单搜索,这是我在刀片中的代码.php :

var date1 = $('[name=date1]').val();
var date2 = $('[name=date2]').val();
$.ajax({
   type: 'POST',
   url: "{{URL::to('filterCode')}}",
   data: "date1="+date1+"&date2="+date2, 
   dataType: 'json',
   success: function(data){
      console.log(data.code);                     
   }
});

这是代码过滤器控制器中的代码

$date1 = Input::get('date1');
$date2 = Input::get('date2');
$filter = DB::table('orders')
                ->whereBetween('orders.date',array($date1,$date2))
                ->get();
foreach ($filter as $f) {
    $data = array('code' => $f->code);
    echo json_encode($data);
}

数据库中的记录 :

----------------------
| code  |    date    |
----------------------
| A001  | 2015-01-08 |
----------------------
| A002  | 2015-01-18 |
----------------------
| A003  | 2015-01-20 |
----------------------

如果我选择日期 2015-01-08 到 2015-01-10,它将显示代码 A001。如果我选择日期 2015-01-08 到 2015-01-18,它应该显示代码 A001 直到 A002。但它没有显示任何东西。你可以帮我吗?

在控制器上尝试此操作。

$date1 = Input::get('date1');
$date2 = Input::get('date2');
$filter = DB::table('orders')
                ->whereBetween('date',array($date1,$date2))
                ->get();
$data = [];
foreach ($filter as $f) {
    $data = array_add($data, 'code', $f->code);
}
return Response::json(['data' => $data]);