// 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);
});
// ListingController.php
<?php
class ListingController extends BaseController {
/**
* Display a listing of listings
*
* @return Response
*/
public function index()
{
$listings = Listing::all();
$categories = Category::all();
return View::make('admin.listing.index', compact('listings', 'categories'));
}
/**
* Show the form for creating a new listing
*
* @return Response
*/
public function create()
{
$listings = Listing::all();
$categories = Category::all();
return View::make('admin.listing.create', compact('listings', 'categories'));
}
// listing.create.blade.php
<ul class="post-list">
<li>
<label for="">Categories</label>
<select name="parent_ID" id="parent_ID" class="form-control input-sm">
@foreach ($categories as $category)
<option value="{{$category->id}}">{{ $category->category_name }}</option>
@endforeach
</select>
</li>
<li>
{{ Form::label('subcategory', 'Subcategory') }}
<select class="form-control input-sm" name="subcategory" id="subcategory">
<option value=""></option>
</select>
</li>
</ul>
// 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>