Laravel AJAX 请求方法的 restful 控制器不工作
Laravel AJAX Request not working of a restful controller for a method
Laravel AJAX 方法的 restful 控制器请求不工作。
此 AJAX 请求不适用于创建方法,但它适用于 laravel 资源控制器的索引方法。
第一个link是索引方法。第二个 link 是无效的创建方法。两个代码相同
http://thetoppinghouse.com/laravel/public/listing
http://thetoppinghouse.com/laravel/public/listing/create
在这里你会得到我的代码摘要
http://laravel.io/bin/roYBY
我已经 post 这个问题,这里没有现场示例,但无法得到解决方案。
Laravel Ajax request not working of a controller
这是我的 AJAX 代码摘要
// AJAX Requesst
<script>
$('#parent_ID').on('change',function(e){
console.log(e);
var cat_id = e.target.value;
// AJAX
$.get('ajax-subcat?cat_id=' + cat_id, function(data){
$('#subcategory').empty();
$.each(data, function(index, subcatObj){
$('#subcategory').append('<option value="'+subcatObj.id+'">'+subcatObj.name+'</option>')
});
console.log(data);
});
});
</script>
And routes is here
// routes.php
Route::resource('listing','ListingController');
Route::get('ajax-subcat', function(){
$cat_id = Input::get('cat_id');
$subcategories = Subcategory::where('parent_ID', '=', $cat_id)->get();
return Response::json($subcategories);
});
问题是您的 javascript 代码正在向 ajax-subcat?cat_id=1
发出 ajax 请求,一个 亲戚 URL。这意味着:
/laravel/public/listing => /laravel/public/ajax-subcat
/laravel/public/listing/create => /laravel/public/listing/ajax-subcat
因为您已经在 blade 模板中有了 javascript,您可以轻松地让 Laravel 生成 URL:
// AJAX
$.get('{{ URL::to('ajax-subcat') }}?cat_id=' + cat_id, function(data){
$('#subcategory').empty();
Laravel AJAX 方法的 restful 控制器请求不工作。
此 AJAX 请求不适用于创建方法,但它适用于 laravel 资源控制器的索引方法。
第一个link是索引方法。第二个 link 是无效的创建方法。两个代码相同
http://thetoppinghouse.com/laravel/public/listing
http://thetoppinghouse.com/laravel/public/listing/create
在这里你会得到我的代码摘要 http://laravel.io/bin/roYBY
我已经 post 这个问题,这里没有现场示例,但无法得到解决方案。 Laravel Ajax request not working of a controller
这是我的 AJAX 代码摘要
// AJAX Requesst
<script>
$('#parent_ID').on('change',function(e){
console.log(e);
var cat_id = e.target.value;
// AJAX
$.get('ajax-subcat?cat_id=' + cat_id, function(data){
$('#subcategory').empty();
$.each(data, function(index, subcatObj){
$('#subcategory').append('<option value="'+subcatObj.id+'">'+subcatObj.name+'</option>')
});
console.log(data);
});
});
</script>
And routes is here
// routes.php
Route::resource('listing','ListingController');
Route::get('ajax-subcat', function(){
$cat_id = Input::get('cat_id');
$subcategories = Subcategory::where('parent_ID', '=', $cat_id)->get();
return Response::json($subcategories);
});
问题是您的 javascript 代码正在向 ajax-subcat?cat_id=1
发出 ajax 请求,一个 亲戚 URL。这意味着:
/laravel/public/listing => /laravel/public/ajax-subcat
/laravel/public/listing/create => /laravel/public/listing/ajax-subcat
因为您已经在 blade 模板中有了 javascript,您可以轻松地让 Laravel 生成 URL:
// AJAX
$.get('{{ URL::to('ajax-subcat') }}?cat_id=' + cat_id, function(data){
$('#subcategory').empty();