我有以下部分观点:
<span>Login Status</span>
@{
if (ViewBag.UserId > 0)
{
@Html.ActionLink("Log Out", "LogOut", "Home", null);
}
else {
@Html.ActionLink("Log In", "Login", "Home", null);
}
}
这只是假装登录状态区域。现在,我们的想法是让它出现在我的MVC网站的母版页中,以便它出现在所有页面上。这是我在_Layout.cshtml文件中呈现它的方式:
<div id="login">
@{ Html.RenderPartial("LoginStatus"); }
</div>
我想要的是,当用户点击“登录”或“注销”链接时,会执行操作(记录用户进/出),然后刷新部分视图 - 但是页面的其余部分是单独的。
目前,当我点击任何链接时,该网站会导航到“主页/登录”或“主页/退出”。我不希望它呈现视图,我想只刷新部分视图,无论我在哪个页面。
建议的方法是什么?
干杯。 雅各
答案 0 :(得分:1)
你可以使用AJAX。所以你可以通过订阅他们的click事件并向相应的控制器动作发送AJAX请求来使用jquery来不引人注意地AJAX化这些链接,这将返回部分视图并更新DOM。
答案 1 :(得分:0)
尝试@Ajax.ActionLink()
方法。