我想@yield或@include一个laravel刀片模板与另一个由AJAX,如何可能?

时间:2016-09-05 14:23:10

标签: ajax laravel vue.js blade

是否可以通过AJAX @yield或@include一个刀片视图文件与另一个刀片?

2 个答案:

答案 0 :(得分:2)

你可以做的是,对控制器进行ajax调用,然后从那里返回渲染的视图。

JS:

        $.ajax({
            method: "GET",
            url: "route-to-ajax-call",
            dataType: 'json',
            data:
            {
                param1:param1,
                param2:param2
            },
            success: function (res)
            {
                $('#div').html(res.data);
            },
            error: function()
            {
                alert('Failed');
            }
        });

控制器:

public function returnAjax(Request $request);{
    $parameter1 = $request->param1;

    $view = View::make('route-to-your-view', ['parameter1' => $parameter1]);

    return response()->json(['status' => 'success', 'data' => $view]);
}

答案 1 :(得分:1)

您可以使用AJAX将HTML加载到您的页面中,但这与Blade无关,因为Blade在服务器端呈现。

使用jQuery的.load()

<script>
    $('#targetDiv').load({{ url('/route/that/returns/the/html') }})
</script>