【发布时间】:2021-10-16 04:40:51
【问题描述】:
我想将整个 html 返回到控制器以进行 ajax 响应。我正在使用 render() 但没有将任何数据输入返回方法
下面是我的ajax:
$.ajax({
type: 'GET',
url: '{{url('/filter_each_video')}}',
data : { resolution : myCheckboxes, fps : myCheckboxesfps },
dataType: 'json',
success: function (response) {
console.log(response);
},
error: function (data) {
console.log(data);
// console.log(data);
}
});
下面是我的控制器实际渲染视图的地方
function filter_each_video(){
if(request()->ajax()){
$item = Item::whereIn('format', $_GET['resolution'])->get();
$formats = DB::table('items')->select('format')->distinct()->get();
$fps = DB::table('items')->select('fps')->distinct()->get();
$data['item_count'] = $item;
$data['item'] = $item;
$data= $this->sellWise($data);
$data= $this->starWise($data);
$data= $this->dateWise($data);
return view('frontend.pages.videos_for_each_filter', compact('data','formats','fps'))->render();
}
}
下面是我设置值的视图文件,整个 html 返回到控制器到 ajax 响应
<?php
$html ="";
$html.= '<div class="row video-list">';
foreach($data['item'] as $video){
$html.= '<div class="item video-item сol-12 col-md-6 col-lg-3 text-white mb-4 pull-left">
<div class="item-wrapper display-7">
<div class="item-img">Video Name</div>
</div>
</div>';
}
$html.= '</div>';
return $html;
?>
如果有人知道我在将 html 内容获取到控制器时到底做错了什么,请告诉我
我想将整个 html 返回到 ajax 响应
【问题讨论】:
-
你能把ajax里面的
dataType: 'json',改成dataType: 'html',吗? -
@Shamir Imtiaz 仍然没有得到任何回应。
-
您是否从控制器正确获取数据?请在控制器中传入随机数据,如
return "hello";,并检查数据是否正确进入 ajaxsuccess:。 -
来自控制器的@Shamir Imtiaz 返回数据commingin ajax 成功。 Return Hello 正确地进入 ajax 成功:
-
先生,在您看来,您不需要返回 html 或任何内容。只需在视图文件中使用普通的 php/blade 代码。请更新您的代码,让我知道代码正在运行。