我在使用 ajax 从控制器检索数据时遇到问题,这是我的代码
触发
<select id="course_select" name="course_select" class="form-control" required autofocus value="{{old('course_select')}}" onchange="getCourse()">
我的 ajax 部分
function getCourse(){
var id=document.getElementById('course_select').value;
alert(id);
$.ajax({
type:'get',
url:'getCourseLessons/'+id,
datatype:'json',
success:function(data){
console.log(data);
alert(data.lessons);
}
});
}
和我的控制器
public function getCourseLessons($id){
$lessons = DB::table('lessons')->select('id','Lesson_name')->where('course_id','=',$id)->get();
return response()->json(array('lessons'=>$lessons));
}
结果 console.log(data)
console.log(data)
ReferenceError: data is not defined[Learn More]
我的路线。
Route::get('/getcourselessons/{id}','AdminController@getCourseLessons');
我会感谢我能得到的所有帮助。
首先请检查您在 Route/Web.php 中使用的路由,它应该是这样的
Route::get('getCourseLessons/{id}','YourController@getCourseLessons');
检查控制器。
public function getCourseLessons($id){
$lessons = \DB::table('lessons')->select('id','Lesson_name')->where('course_id',$id)->get();
return response()->json(array('lessons'=>$lessons));
}
根据您的 ajax 代码没问题,但您也可以试试这个。
function getCourse(){
var id=$('#course_select').val();
alert(id);
$.ajax({
type:'get',
url:'{{url('getCourseLessons')}}/'+id,
datatype:'json',
success:function(data){
console.log(data);
alert(data.lessons);
}
});
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句