Jquery Dependent下拉列表正在使用Laravel中的ajax返回[object]?

Jquery Dependent下拉列表正在使用Laravel中的ajax返回[object]?,jquery,ajax,laravel-5,laravel-5.5,Jquery,Ajax,Laravel 5,Laravel 5.5,我有两个下拉列表城市和城市区域。我想根据选定的城市值填充城市面积下拉列表 路线: Route::get('create-profile', 'ProfileController@index'); Route::get('create-profile/city_area/{id}', 'ProfileController@city_area'); 主要下拉列表为:城市 <div class="col-xs-7 col-md-push-1"> <select name="

我有两个下拉列表城市和城市区域。我想根据选定的城市值填充城市面积下拉列表

路线:

  Route::get('create-profile', 'ProfileController@index');
  Route::get('create-profile/city_area/{id}', 'ProfileController@city_area');
主要下拉列表为:城市

<div class="col-xs-7 col-md-push-1">
<select name="city" id="city">
<option value="">--- Select City ---</option>
 @foreach($city as $city)
  <option value="{{$city->id}}">{{$city->city_name}}</option>
 @endforeach
 </select></div>

当您看到[对象对象]时,这是对象到字符串转换的明显标志

city\u area()函数返回对象列表,稍后用JSON编码。因此,用于填充城市区域的变量是Javascript对象,而不是字符串。在本例中,您需要指定要使用的此对象的属性-idarea\u name

$('select[name="city_area"]').append('<option value="'+ value.id +'">'+ value.area_name +'</option>');
$('select[name=“city\u area”]”)。追加(“”+value.area\u name+“”);

如果我使用的是thing,dependent下拉列表将显示所有行的“未定义”值。您可以粘贴“data”变量包含的内容吗?调用city_area返回的JSON顺便说一句,您不必在city_area中手动编码JSON-Laravel将在选择第一个下拉菜单返回[{“id”:22,“area_name”:“Praha 2”},{“id”:21,“area_name”:“Praha 1”}(无JSON)和[{“id”:22,“area_name”:“Praha 2”},{“id”:21,“area_name”:“Praha 1”}](使用json)在
city\u区域
下拉列表中是否只获得一个或多个值?能否在
$中控制台.log
value
。每个
回调?
<script type="text/javascript">
$(document).ready(function() {
    $('select[name="city"]').on('change', function() {
        var cityID = $(this).val();
        if(cityID) {
            $.ajax({
                url: 'create-profile/city_area/'+cityID,
                type: "GET",
                dataType: "json",
                success:function(data) {
                    $('select[name="city_area"]').empty();
                    $.each(data, function(key, value) {
                        $('select[name="city_area"]').append('<option value="'+ key +'">'+ value +'</option>');
                    });
                }
            });
        }else{
            $('select[name="city_area"]').empty();
        }
    });
});
public function city_area($id)
{
$city_area= DB::table('czech_area')->where('citi_id',$id)- 
>select('id','area_name')->get();
    return json_encode($city_area);
}
$('select[name="city_area"]').append('<option value="'+ value.id +'">'+ value.area_name +'</option>');