Ajax 我的代码中有什么错误我是ajjax新手

Ajax 我的代码中有什么错误我是ajjax新手,ajax,laravel-6,Ajax,Laravel 6,我想使用ajjax创建一个相关下拉选择框。我找不到我的错误。请帮我找出我的错误。选择专业时,根据专业显示医生姓名。但我不能这么做。 这是我的Route.php Route::get('/admin/appointment/view/{id}', 'AppointmentController@appointmentView'); Route::get('/admin/appointment/speciality', 'AppointmentController@doctorView')->n

我想使用ajjax创建一个相关下拉选择框。我找不到我的错误。请帮我找出我的错误。选择专业时,根据专业显示医生姓名。但我不能这么做。 这是我的Route.php

Route::get('/admin/appointment/view/{id}', 'AppointmentController@appointmentView'); Route::get('/admin/appointment/speciality', 'AppointmentController@doctorView')->name('admin.appointment.speciality');
我的预约管理员

public function doctorView(Request $request)
    {
        $data=Doctor::select('doctor_name','doctor_specialty')->where('doctor_specialty',$request->speciality)->take(100)->get();
        return response()->json($data);//then sent this data to ajax success

    }
查看文件:

<div class="form-group">
     <label for="inputState" class="col-form-label">Doctor Speciality</label>
     <select name="speciality" id="speciality" class="form-control doctor_speciality" data-dependent="state">
      <option value="">Select Speciality</option>
       @foreach($specialityLists as $specialityList)
       <option value="{{$specialityList->speciality}}">{{$specialityList->speciality}}</option>
       @endforeach
        </select>
     </div>

 <div class="form-group">
   <label for="inputState" class="col-form-label">Doctor Name</label>
   <select name="doctors_name" id="doctors_name" class="form-control doctor_name " >
   <option value="0" selected="true">Choose Doctor Name</option>
       </select>
 </div>

博士专业
选择专业
@foreach($specialityList作为$specialityList)
{{$specialityList->speciality}
@endforeach
医生姓名
选择医生姓名
脚本文件:

$(document).ready(function(){

 $(document).on('change','.doctor_speciality',function(){
            // console.log("hmm its change");
            var speciality_id = $(this).val();
            // console.log(speciality_id);
            var div=$(this).parent();
            var op=" ";
            $.ajax({
                type:'get',
                url: '{!!URL::to('/admin/appointment/speciality')!!}',
                data:{'id':speciality_id},
                success:function(data){
                    // console.log('success');
                    // console.log(data);
                    // console.log(data.length);
                    op+='<option value="0" selected disabled>Choose Doctor</option>';
                    for(var i=0;i<data.length;i++){
                    op+='<option value="'+data[i].doctor_specialty+'">'+data[i].doctor_name+'</option>';
                         }
                    div.find('.doctor_name').html(" ");
                   div.find('.doctor_name').append(op);
                },
                error:function(){
                }

            });
    });

});
$(文档).ready(函数(){
$(文档).on('change','doctor_speciality',function(){
//log(“它的变化”);
var_id=$(this.val();
//console.log(专用标识);
var div=$(this.parent();
var op=“”;
$.ajax({
类型:'get',
url:“{!!url::to(“/admin/appointment/speciality”)!!}”,
数据:{'id':专业\u id},
成功:功能(数据){
//console.log('success');
//控制台日志(数据);
//console.log(data.length);
op+=“选择医生”;

对于(var i=0;i让我向您澄清

使用
post

Route::post('/admin/appointment/speciality', 'AppointmentController@doctorView')->name('admin.appointment.speciality');
现在,您的
ajax
部分

$(document).ready(function(){

$(document).on('change','.doctor_speciality',function(){
        var speciality_id = $(this, 'option:selected').val();
        $.ajax({
            type:'post',
            url: "{{ route('admin.appointment.speciality') }}",
            data:{speciality:speciality_id,_token:@json(csrf_token())},
            success:function(data){
                // console.log(data);
                var op ='<option value="0" selected disabled>Choose Doctor</option>';
                $.each(data,function(key,value){
                  op+='<option value="'+value.doctor_specialty+'">'+value.doctor_name+'</option>';
                });
                $('.doctor_name').empty().append(op);
            },
            error:function(data){
             console.log(data);
            }

        });
   });

});

如果数据为
null
当然,您可以编写
检查
等。

让我向您澄清

使用
post

Route::post('/admin/appointment/speciality', 'AppointmentController@doctorView')->name('admin.appointment.speciality');
现在,您的
ajax
部分

$(document).ready(function(){

$(document).on('change','.doctor_speciality',function(){
        var speciality_id = $(this, 'option:selected').val();
        $.ajax({
            type:'post',
            url: "{{ route('admin.appointment.speciality') }}",
            data:{speciality:speciality_id,_token:@json(csrf_token())},
            success:function(data){
                // console.log(data);
                var op ='<option value="0" selected disabled>Choose Doctor</option>';
                $.each(data,function(key,value){
                  op+='<option value="'+value.doctor_specialty+'">'+value.doctor_name+'</option>';
                });
                $('.doctor_name').empty().append(op);
            },
            error:function(data){
             console.log(data);
            }

        });
   });

});

如果数据为
null
当然你可以写
检查
等等。

我已经更新了我的代码,看到差异。但是你面临什么错误?我已经更新了我的代码,看到差异。但是你面临什么错误?