我有一个AJAX调用,我希望它返回带有查询结果的刀片模板。
我的jQuery代码:
$(document).on('click','.user-profile-child', function(){
let id = $(this).parents('.user-profile-parent').attr('id');
$.ajax({
url: '/loadUserProfile',
type: 'GET',
data: {id: id},
dataType: 'json',
success: function(r){
console.log(r);
}
})
});
必须执行查询并返回结果的视图的函数:
public function loadUserProfile(Request $request){
$id = $request->input('id');
$user = User::where('id',$id)->get()->toArray();
$returnHTML = view('userProfile')->with('user', $user)->render();
return response()->json(array('success' => true, 'html'=>$returnHTML));
}
这就是我在控制台https://ibb.co/dth85Kh中得到的
我尝试过这样编写函数,但是它不会重定向到我的视图,并且不会成功返回任何内容。
public function loadUserProfile(Request $request){
$id = $request->input('id');
$user = User::where('id',$id)->get()->toArray();
return view('userProfile',['user' => $user]);
}
答案 0 :(得分:0)
那不可能。
刀片视图助手编译为php代码。在将页面发送到浏览器之前,PHP是在服务器端读取的,因此您无法即时运行php代码。所以不。
我建议使用InnerHtml,它使用JavaScript和HTML将数据附加到视图中。