Can you try to clean your route cache?
php artisan route:cache
Otherwise you can review in the cliente side the network bar, and check the request

view
<form class="m-t-40" method="post" action="area" enctype="multipart/form-data">
{{csrf_field()}}
<div class="form-group">
<h5>Select Country <span class="text-danger">*</span></h5>
<div class="controls">
<select class="form-control" name="company_country" id="company_country" onchange="getZone(this.value)" required>
<option>--Select country--</option>
@foreach($country as $st)
<option value="{{$st->country_id}}">{{$st->country_name}}</option>
@endforeach
</select>
</div>
</div>
<div class="form-group">
<h5>Zone Name<span class="text-danger">*</span></h5>
<div class="controls">
<select class="form-control" name="zone_id" onchange="getRegion(this.value)" required>
<option>--Select Zone--</option>
</select>
</div>
</div>
<div class="form-group">
<h5>Region Name <span class="text-danger">*</span></h5>
<div class="controls">
<select class="form-control " name="region_id" onchange="getState(this.value)" required>
<option>--Select Region--</option>
</select>
</div>
</div>
<div class="form-group">
<h5>Select State <span class="text-danger">*</span></h5>
<div class="controls">
<select class="form-control" name="state_id" id="state_id" required>
<option>--Select State--</option>
</select>
</div>
</div>
<div class="form-group">
<h5>Area Name <span class="text-danger">*</span></h5>
<div class="controls">
<input type="text" name="area_name" id ="area_name" class="form-control" required data-validation-required-message="This field is required" required> </div>
</div>
<div class="form-group">
<h5>Select State Area <span class="text-danger">*</span></h5>
<div class="controls">
<select class="select2 m-b-10 select2-multiple" name="state_area[]" id="state_area" style="width: 100%" multiple="multiple" data-placeholder="Choose" required data-validation-required-message="Please select state area" required>
@foreach($city as $ct)
<option value="{{$ct->city_id}}">{{$ct->city_name}}</option>
@endforeach
</select>
</div>
</div>
<div class="text-xs-right">
<button type="submit" class="btn btn-info">Submit</button>
<button type="reset" class="btn btn-inverse">Cancel</button>
</div>
</form>
script
function getZone(country)
{
if(country) {
$.ajax({
url: '{{url('/')}}/zone/ajax/'+country,
type: "GET",
dataType: "json",
success:function(data) {
console.log(data)
$('select[name="zone_id"]').empty();
$('select[name="zone_id"]').prepend('<option value="">--Select Zone--</option>');
$.each(data, function(key, value) {
$('select[name="zone_id"]').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
} else{
$('select[name="zone_id"]').empty();
}
}
function getRegion(zone)
{
if(zone) {
$.ajax({
url: '{{url('/')}}/region/ajax/'+zone,
type: "GET",
dataType: "json",
success:function(data) {
console.log(data);
$('select[name="region_id"]').empty();
$('select[name="region_id"]').prepend('<option value="">--Select Region--</option>');
$.each(data, function(key, value) {
$('select[name="region_id"]').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
} else{
$('select[name="region_id"]').empty();
}
}
function getState(region)
{
if(region) {
$.ajax({
url: '{{url('/')}}/state/ajax/'+region,
type: "GET",
dataType: "json",
success:function(data) {
console.log(data);
$('select[name="state_id"]').empty();
$('select[name="state_id"]').prepend('<option value="">--Select State--</option>');
$.each(data, function(key, value) {
$('select[name="state_id"]').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
} else{
$('select[name="state_id"]').empty();
}
}
controller
public function ZoneAjax($country)
{
$zone = Zone::where("country_id",$country)
->pluck('zones.zone_name','zones.zone_id')->all();
return json_encode($zone);
}
public function RegionAjax($zone)
{
$region = Region::where("zone_id",$zone)
->pluck('regions.region_name','regions.region_id')->all();
return json_encode($region);
}
public function StateAjax($region)
{
$state = State::where("region_id",$region)
->pluck('states.state_name','states.state_id')->all();
return json_encode($state);
}
web.php
Route::get('zone/ajax/{country}','AreaController@ZoneAjax');
Route::get('region/ajax/{zone}','AreaController@RegionAjax');
Route::get('state/ajax/{region}','AreaController@StateAjax');
this gives null value
http://localhost/partsanalysis/public/state/ajax/16
Please or to participate in this conversation.