Laravel 4中的JQuery没有返回数据..为什么?
问题描述:
我的项目是电子商务....布局product.blade.php文件Laravel 4中的JQuery没有返回数据..为什么?
{{ HTML::script('js/jquery.js') }}
<script type="text/javascript">
$("#frm").submit(function(e){
$('#returncart').html("loading ...");
e.preventDefault();
var token = $("input[name=_token]").val();
$.ajax({
type: "POST",
url : "{{ route('add-to-cart') }}",
data : dataString,
success : function(data){
$('#returncart').html(data);
}
},"json");
});
</script>
和cartController.php文件
public function addToCart(){
$maxQuantity = Product::where('id','=',Input::get('id'));
$maxQuantity = $maxQuantity->first();
$validator = Validator::make(Input::all(),array(
'quantity' =>'required|integer|min:1|max:'.$maxQuantity->quantity.''
));
return "added to cart";
}
和路由文件
Route::post('/cart',array('as'=>'add-to-cart','uses'=>'[email protected]'));
和product.blade.php文件中
<form id='frm' action='{{ URL::route("add-to-cart") }}' method='post'>
<div class="row">
<div class="col-md-4 centeration">
<img src="{{ URL::to($productDetails->image) }}">
</div>
<div class="col-md-7">
<div class='row'>
<h3> {{ $productDetails->name }}<br>
<small> Category: <a href="{{ URL::route('category-details',$productDetails->category_id) }}">{{ $productDetails->category_name }}</a></small></h3>
</div>
<div class='row'>
<p> {{ $productDetails->details }}</p>
</div>
<div class='row'>
<p><label>Sale Price:</label> {{ $productDetails->price }} LE</p>
<div class="row">
<div class="col-md-2"><label for='quantity'>Quantity: </label> </div>
<div class="col-md-3">
<input type='number' value='1' min='1' max='{{ $productDetails->quantity }}' name='quantity' class="form-control col-md-4">
</div>
</div>
<div class="row top-2">
<div class="col-md-6">
<input type='hidden' name='id' value="{{ $productDetails->id }}">
<input type='submit' class="btn btn-success btn-block" value="Add to cart">
</div>
</div>
</div>
</div>
</div>
{{ Form::token() }}
</form>
<div id='returncart'></div>
为什么我的代码错了?此代码不返回我的字符串“添加到购物车”在div #returncart为什么?!
答
哥们你有没有definied在 'dataString' jQuery的 '$( “#FRM”)提交()',之前做 '$就' 增加以下内容:
var dataString = $(this).serializeArray();
我想这将工作,如果一切顺利。 :)
+0
非常感谢Sameer先生:) – khaledbelal 2014-10-05 08:54:05
您是否调试过代码? – undefined 2014-10-05 08:47:21