我对MVC很新,所以我不知道如何只在主页上显示div。基本上它是一个预加载器,我不想在除家之外的任何其他页面上显示。
我通常在.NET中执行以下操作:
<%if(Request.Url.ToString().ToLower().Contains("default")) {%>
<div id="PageLoader">
<div class="PageLoaderInner">
<div class="LoaderLogo"><img src="/Content/Images/Masterpage/Logo.png" width="127" height="125"/></div>
<div class="LoaderIcon"><span class="spinner"></span><span></span></div>
</div>
</div>
<%}%>
它也是一个非常基本的网站,所以我已经从URL中删除了控制器名称,在我的情况下&#34; Pages&#34;所以URL显示/联系人而不是/ Pages / Contact
除了查看URL之外,还有其他方式显示div吗?如果有人可以在Pages控制器以及&#34; inline&#34;中向我展示如何执行此操作,那将是非常棒的。在HTML中。
此时显示的所有Pages控制器都是:
namespace WebsiteName.Web.Controllers
{
public class PagesController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult Contact()
{
return View();
}
}
}
谢谢你们。
答案 0 :(得分:3)
只是解释一下 Rosko 在评论中用代码
所说的内容布局页面
<div id="body">
@RenderSection("SectionName", required: false)
<section class="content-wrapper main-content clear-fix">
@RenderBody()
</section>
</div>
索引页
@section SectionName{
// your code
}
Section SectionName将在Index主体之前呈现,同样您也可以重新定义该部分的位置。
答案 1 :(得分:1)
你可以试试这个: 编辑:不检查网址
@{if(ViewBag.isHome)
{
<div id="PageLoader">
<div class="PageLoaderInner">
<div class="LoaderLogo"><img src="/Content/Images/Masterpage/Logo.png" width="127" height="125"/></div>
<div class="LoaderIcon"><span class="spinner"></span><span></span></div>
</div>
</div>
}
}
///服务器
namespace WebsiteName.Web.Controllers
{
public class PagesController : Controller
{
public ActionResult Index()
{
ViewBag.isHome = true;
return View();
}
public ActionResult Contact()
{
return View();
}
}
}