预渲染刀片模板&在AJAX中返回结果

时间:2014-05-26 18:57:40

标签: php laravel laravel-4 blade

有没有办法可以渲染Blade模板&在AJAX中返回结果?

我有一个自定义模板,其中在页面加载时加载了前几个项目。其余项目通过ajax加载。我可以使用模板文件通过ajax返回渲染的布局吗?

2 个答案:

答案 0 :(得分:4)

// Controller method
public function ajaxMethod()
{
    $data = [
        'view' => View::make('path/to/the/view')
            ->with('userLetsSay', $userData)
            ->render()
    ];

    return Response::json($data, 200);
}

// AJAX callback on success.
// ...

success: function(response) {
    console.log(response.view);
}

// ...

答案 1 :(得分:0)

你可以使用这样的东西(Check this article):

$view = View::make('home.index')->with('something', $something);
return $view->renderSections()['content']; // Get rendered @section('content')

此外,您可以排除ajax调用的模板并将原始数据返回给客户端,然后使用DOM将该数据插入JavaScript,但不确定您是如何进行的所以不能更具体。

更新:您还可以呈现完整模板并将其发送到客户端(提供其他答案)。