Php 刷新内容页而不刷新laravel中的母版页

Php 刷新内容页而不刷新laravel中的母版页,php,laravel,laravel-5.1,Php,Laravel,Laravel 5.1,我有一个管理布局 我有一个包含以下内容的主布局: 顶部导航 左侧导航 每个页面都是一个视图,我扩展了主布局视图,只更新内容部分 我的目标是只刷新内容页,而不刷新母版页 像这样的东西有没有laravel套餐 简短回答:使用AJAX。如果JavaScript框架这么简单,就没有必要学习它(除非你真的想学习)。下面的示例使用jQuery并假设您正在单击导航中的用户链接(那里的所有链接都应该有一个nav项类,以便可以通过该选择器轻松识别它们),并且该链接具有属性href=“/admin/Use

我有一个管理布局


我有一个包含以下内容的主布局:

  • 顶部导航
  • 左侧导航
每个页面都是一个视图,我扩展了主布局视图,只更新内容部分

我的目标是只刷新内容页,而不刷新母版页



像这样的东西有没有laravel套餐

简短回答:使用AJAX。如果JavaScript框架这么简单,就没有必要学习它(除非你真的想学习)。下面的示例使用jQuery并假设您正在单击导航中的用户链接(那里的所有链接都应该有一个
nav项
类,以便可以通过该选择器轻松识别它们),并且该链接具有属性
href=“/admin/Users”
。单击时,它将使用类
content
加载元素中的内容:

$('.item-nav').click(function (event) {
    // Avoid the link click from loading a new page
    event.preventDefault();

    // Load the content from the link's href attribute
    $('.content').load($(this).attr('href'));
});
如果路由
admin/users
将返回包含其内容的用户表:

get('admin/users', function () {
    return view('users')->with('users', Users::all());
});
当然,上面的Laravel route示例经过简化,展示了导航中的每个项目都应该链接到需要动态显示的内容的想法。

您可以使用renderSections()

在主控制器操作中(例如AdminUsersController@getIndex)您可以根据请求渲染视图的特定部分。这样,如果对同一页面执行ajax请求,则只能返回所需的部分

 if($request->ajax()) {
         return view('admin.users',$users)->renderSections()['content'];
 }

 return view('admin.users',$users);

简单使用ajax)或者我应该解释更多吗?您总是提供答案。我真的很感激你的帮助。