从AJAX加载刀片模板

时间:2019-07-08 16:56:16

标签: jquery ajax laravel

我有一个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]);

    }

1 个答案:

答案 0 :(得分:0)

那不可能。

刀片视图助手编译为php代码。在将页面发送到浏览器之前,PHP是在服务器端读取的,因此您无法即时运行php代码。所以不。

我建议使用InnerHtml,它使用JavaScript和HTML将数据附加到视图中。