因此,当我查看页面源代码时,将显示json响应(即我正在检索的表)而不是html页面。
我一直试图首先弄清楚如何在仍呈现HTML的同时检索json响应,这使我想出了这个控制器代码。希望对如何改进我的代码以解决此问题有所帮助。希望提出建议!
我的控制器:
$products = Product::all();
if (\Illuminate\Support\Facades\Request::ajax())
return response()->json($products);
else
return view('products.index');
jQuery脚本:
$(document).ready( function () {
var pathname = window.location.pathname;
loadProducts();
function loadProducts(){
var columns = [{
"sTitle": "Name",
"mData": "name"
}, {
"sTitle": "Price",
"mData": "price"
}, {
"sTitle": "Category_ID",
"mData": "category_id"
}, {
"sTitle": "Supplier_ID",
"mData": "supplier_id"
}]
$.ajax({
'url': '{{ url('products') }}',
'method': "GET",
'contentType': 'application/json'
}).done( function(data) {
var example_table = $('#myTable').DataTable({
"aaData": data,
"columns": columns
});
});
}
答案 0 :(得分:0)
我建议您使用DataTable JSONP data source for remote domains
$(document).ready(function() {
$('#example').DataTable( {
"processing": true,
"serverSide": true,
"ajax": {
"url": "scripts/jsonp.php",
"dataType": "jsonp"
}
} );
} );