[转]layui点击左侧导航栏,实现不刷新整个页面,只刷新局部

本文转自:https://blog.csdn.net/s31415926_004/article/details/84256587

其实这篇文章是给自己看的,以后忘记怎么做回来还能看一下哈哈哈哈哈哈哈哈。。。嗝

    点击左侧菜单栏只刷新局部,局部就用iframe。

    首先先建layout页,建左侧菜单栏,然后下面的@RenderBody()

<div class="layui-side layui-bg-black">
<div class="layui-side-scroll">
<!-- 左侧导航区域(可配合layui已有的垂直导航) -->
<ul class="layui-nav layui-nav-tree" lay-filter="test">

<li class="layui-nav-item layui-nav-itemed Card">
<a class="" href="#">名片审核</a>
</li>

<li class="layui-nav-item Project">
<a href="#">项目审核</a>
</li>

<li class="layui-nav-item Funds"><a href="#">需求审核</a></li>
</ul>
</div>
</div>
<div class="layui-body">
@RenderBody()
@RenderSection("scripts", required: false)
</div>
    然后在最后写上js用于点击跳转,上面的@RenderSection("scripts", required: false)和下面的#demoAdmin都在另一个页面中,也就是放iframe的页面

<script>
//JavaScript代码区域
layui.use('element', function () {
var $ = layui.jquery
, element = layui.element;
});
$(".Card").click(function () {
$("#demoAdmin").attr("src", "/Admin/CardManagement")
});
$(".Project").click(function () {
$("#demoAdmin").attr("src", "/Admin/ProjectManagement")
});
$(".Funds").click(function () {
$("#demoAdmin").attr("src", "/Admin/FundsManagement")
});
</script>
    新建HomeController,新建Index页面

    


@{
Layout = null;
Layout = "~/Areas/Admin/Views/Shared/_Layout.cshtml";
}

<iframe src="/Admin/CardManagement" frameborder="0" id="demoAdmin" style="width: 100%; height: 100%;"></iframe>


@section scripts{
<script>
reHeight();
$(window).resize(function () {
reHeight();
});
//设置iframe高度
function reHeight() {
var bodyHeight = $(window).height();
bodyHeight = bodyHeight - 107;
if (bodyHeight<400) {
bodyHeight = 400;
}
$("#demoAdmin").height(bodyHeight);
}
</script>
    引用一下上面的layout。

    其他页面引用Layout = "~/Areas/Admin/Views/Shared/_LayoutPage.cshtml";

    我把css和js引用都放在了另一个layout里,所以我需要引用一下,否则页面会乱。
---------------------
作者:PiNosan
来源:CSDN
原文:https://blog.csdn.net/s31415926_004/article/details/84256587
版权声明:本文为博主原创文章,转载请附上博文链接!

 

posted on 2019-03-12 14:41  freeliver54  阅读(7713)  评论(0编辑  收藏  举报

导航