【发布时间】:2020-09-14 20:39:00
【问题描述】:
我是 laravel 的新手,我已经被这个问题困扰了好几个小时——“”此请求没有可用的响应数据“”。我研究了一些相关问题,但仍然无法找到解决方案。
我有一个自动完成搜索,它在 <a> 标记内显示学生列表,该标记具有 onclick 函数以显示带有所选学生详细信息的模式。自动完成搜索工作正常,当我点击<a> 标签时,模式弹出但不显示所选学生的详细信息。
我正在使用 ajax 来获取学生的详细信息并将其显示在模式上。我检查了网络状态,它显示“此请求没有可用的响应数据”。如何解决这个问题?非常感谢任何帮助。
这是我的自动完成搜索的样子,然后用户将单击所选学生以打开模式并显示学生的详细信息。
//My route
Route::group(['middleware' => 'auth'], function(){
Route::get('violation_entry', ['as' => 'violation_entry', 'uses' => 'ViolationEntryController@index']);
Route::get('violation_entry/fetch', ['as' => 'violation_entry.fetch', 'uses' => 'ViolationEntryController@fetch']);
Route::get('violation_entry/form', ['as' => 'violation_entry.form', 'uses' => 'ViolationEntryController@form']);});
//(My ViolationEntryController@fetch Controller)
//this is the searched result that triggers the display of modal when clicked using onclick="violationForm()"
function foreach($data as $student){
$output .= '<div class="row">
<div class="col-lg-8 col-md-12 col-sm-12" >
<a href="#" onclick="violationForm()" id="'.$student->student_id.'" class="violationFormStudent list-group-item list-group-item-action d-flex justify-content-start text-decoration-none">
<div class="student_image_div mr-3">
<img class="student_img" src="../paper/img/students_images/default_student_image.jpg" alt="Student Image">
</div>
<div class="student_details_div">
<p class="student_name_txt">'.$student->last_name.', '.$student->first_name.'</p>
<p class="student_number_txt text-dark">'.$student->student_id.' <span class="text-muted"> | '.$student->course.'-'.$student->section.' | '.$student->school.' </span></p>
</div>
</a>
</div>
</div>
';
}
//(index.blade.php view)
//this is the ajax request to fetch student's details and show modal
<script>
function violationForm(){
var query = $(this).attr('id');
$.ajax({
url:"{{ route('violation_entry.form') }}",
method:"GET",
data:{query:query},
success:function(data){
$('#violationEntryForm').modal('show');
$('#studentDetails').html(data);
}
});
};
</script>
//(My ViolationEntryController@form Controller)
//get ajax request and fetch student's information
function form(Request $request)
{
if($request->get('query')){
$query = $request->get('query');
$student = Students::where('student_id', $query)->first();
$output ='
<div class="student_img_div_modal mr-4">
<img class="student_img_modal" src="../paper/img/students_images/default_student_image.jpg" alt="">
</div>
<div class="student_details_div_modal">
<p class="student_id_txt_modal">'.$student->student_id.'</p>
<p class="student_name_txt_modal">'.$student->first_name.' '.$student->last_name.'</p>
<p class="student_details_txt_modal">'.$student->course.'-'.$student->section.' | '.$student->school.'</p>
</div>
';
echo $output;
}
}
这是我的模态的预期输出
这是不显示学生信息的最终输出
以下是我的网络状态截图
为什么会显示“此请求没有可用的响应数据”?
【问题讨论】:
-
return $output而不是 echo -
仍然没有可用的响应数据。
-
在success函数中制作console.log(data),并在console.log(data)中制作错误函数;这样你就可以看到发生了什么
-
print $request->get('query') & 检查是否获取到值!
-
lewis4u - 开发工具上的源选项卡仅突出显示我脚本上的 console.log(data),但不显示控制台上的任何数据。