其實這篇文章是給自己看的,以後忘記怎麼做回來還能看一下哈哈哈哈哈哈哈哈。。。嗝
點擊左側菜單欄只刷新局部,局部就用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裏,所以我需要引用一下,否則頁面會亂。