страна, которая заполняет выбранные города, а города заполняет выбранные районы, для выбранных городов она заполняется непосредственно, с другой стороны, выбирает район, она заполняет только это изменение значения выбранных городов. другой вопрос Могу ли я получить обе функции контроллера в одной функции?
create.blade. php
<div class="form-group">
<label>country <span class="text-hightlight">*</span></label>
<select class="form-control" name="country" id="country_id">
<option selected disabled></option>
@foreach($countries as $country)
<option value="{{ $country->id }}">{{ $country->country }}</option>
@endforeach
</select>
</div>
<div class="form-group">
<label>city <span class="text-hightlight">*</span></label>
<select class="form-control" name="city" id="city_id">
<option selected disabled></option>
</select>
</div>
<div class="form-group">
<label>district <span class="text-hightlight">*</span></label>
<select class="form-control" name="district" id="district_id">
<option selected disabled></option>
</select>
</div>
jQuery
<script>
//select
$(document).on('change', '#country_id', function() {
var country_id = $(this).val();
var div = $(this).parent();
var op = " ";
$.ajax({
type: 'get',
url: "{{ route('annonces.selectV') }}",
data: {
'idv':country_id,
},
success: function(data2){
console.log(data2);
for (var i = 0; i < data2.option.length; i++){
op += '<option value="'+data2.option[i].id+'">'+data2.option[i].city+'</option>';
}
$("#city_id").empty();
$("#city_id").append(op);
},
error: function(){
console.log('error');
},
});
});
//city
$(document).on('change', '#city_id', function() {
var city_id = $(this).val();
var div = $(this).parent();
var op = " ";
$.ajax({
type: 'get',
url: "{{ route('annonces.selectI') }}",
data: {
'idi':city_id,
},
success: function(data3){
console.log(data3);
for (var i = 0; i < data3.option.length; i++){
op += '<option value="'+data3.option[i].id+'">'+data3.option[i].district+'</option>';
}
$("#district_id").empty();
$("#district_id").append(op);
},
error: function(){
console.log('error');
},
});
});
</script>
AnnonceController. php
public function selectV(request $request){
$data2 = City::select('city', 'id')->where('Country_id', $request->idv)->get();
return response()->json(['option'=>$data2]);
}
public function selectI(request $request){
$data3 = District::select('district', 'id')->where('city_id', $request->idi)->get();
return response()->json(['option'=>$data3]);
}