在Laravel 4中使用jQuery Ajax 4
我是ajax jquery的新手,并试图理解代码并试图实现它。我会让你知道我到底想做什么以及我在做什么。在Laravel 4中使用jQuery Ajax 4
我有一个搜索框,我输入“SKU”,我得到表格和特定sku的信息。
我有这个在我的routes.php文件
Route::get('bestsellers', array('as'=>'bestsellers', 'uses' =>'[email protected]'));
在我的控制器,我有
class SalesFlatOrderItemsController extends \BaseController {
$sku_query = Input::get('sku');
if($sku_query){
$orders = SalesFlatOrder::join('sales_flat_order_item as i','sales_flat_order.entity_id','=','i.order_id')
->select((array(DB::Raw('DATE(i.created_at) as days'), DB::Raw('sum(i.qty_ordered) AS qty_ordered'), DB::Raw('sum(i.row_total) AS row_total'),'i.item_id', 'i.name','i.sku')))
->where('i.sku','=',$sku_query)
->groupBy('i.sku')
->orderBy('qty_ordered','Desc')
->paginate(10);
}
return View::make('sales_flat_order_items.bestsellers')->with('orders', $orders);
}
并在bestsellers.blade.php
,我有
<input type="text" id="sku" placeholder="Search the sku..." name="sku">
<input type="hidden" id="search_sku" name="search_sku" value="">
<button type="button" id="searchSubmit" class="btn btn-info">Search</button><div class="spin-area" id="spin-area">
<thead>
<tr class="odd gradeX">
<th>Sku</th>
<th>Product Name</th>
<th>Items Ordered</th>
<th>Total</th>
</thead>
@foreach ($orders as $item)
<tr class="odd gradeX">
<td><a href="{{ URL::action('[email protected]', $item->sku) }}">{{ $item->sku }}</a></td>
<td>{{ $item->name }}</td>
<td>{{ round($item->qty_ordered,2) }}</td>
<td>{{ round($item->row_total,2) }}</td>
</tr>
@endforeach
</table>
</div>
</div>
</div>
</div>
这是输入sku应该被输入,并且ajax应该帮助得到我在同一页上的sku信息。所以AJAX是如下
<script>
$(document).ready(function(){
$('#searchSubmit').on('click',function(){
var data ="sku="+$('#sku').val();
$.ajax({
type:"GET",
data:data,
url:"/bestsellers",
dataType:"JSON",
success:function(data){
alert('success');
}
})
});
});
</script>
有人可以让我知道什么是我的代码走错了,在此之前,我已经使用后的传统方式,并得到请求,它的工作原理,但不是AJAX调用。
请帮忙。
谢谢。
试试这个
$(document).on('click','#searchSubmit',function(){
var data ="sku="+$('#sku').val();
$.ajax({
type:"GET",
data:data,
url:"{{URL::to('/bestsellers')}}",
dataType:"JSON",
success:function(data){
alert('success');
// data variable will have the data returned by the server. use it to show the response
}
})
});
试过这个,它给我找不到404错误页面。我的实际应该是url:localhost/laravel/public/bestsellers?sku = SDFGD – 2014-12-02 12:52:59
但我得到了本地主机/畅销书?sku = SDFGD。这是你显示页面没有找到 – 2014-12-02 12:54:54
如何更新的? – 2014-12-02 12:56:16
的就是你在网络正在得到响应? – 2014-12-02 12:26:24
如果我使用url:“/ bestsellers”,那么我得到的页面没有找到错误,当我使用url:“畅销书”,我没有得到任何错误,在网络中,没有错误显示,现在如何调试 – 2014-12-02 12:28:44
反应如何? – 2014-12-02 12:29:54