我有一个来自 actionLinks 的菜单。所有链接都有一些 id。根据我传输到 View 的列表,我希望某些链接可见,有些则不可见。这是我的整体看法:
@{
ViewBag.Title = "My Page";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>My Page</h2>
@foreach (var item in (List<MyTemplate>[])ViewData["myList"])
{
if (item == "something1")
{
<script type="text/javascript">
$(document).ready(function () {
$('#someId').hide();
});
</script>
}
if (item == "something4")
{
<script type="text/javascript">
$(document).ready(function () {
$('#someOtherId').hide();
});
</script>
}
}
这样好吗?
编辑:链接源代码
<div id="menucontainer">
<ul id="menu">
<li id="id1">@Html.ActionLink("My home page", "home", "home")</li>
<li id="users">@Html.ActionLink("Users", "Index", "Home")</li>
<li id="articles">@Html.ActionLink("Articles", "Index", "Home")</li>
<li id="id2">@Html.ActionLink("Photos", "Index", "Home")</li>
<li id="id3">@Html.ActionLink("about me", "Index", "Home")</li>
<li id="id4">@Html.ActionLink("sdsdf", "Index", "Home")</li>
</ul>
</div>
最佳答案
你不需要 JavaScript。如果您使用服务器端构建链接,则可以为该链接设置一个 css 类
,以指示该元素是否可见。
关于MVC View 中的 Jquery 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8807578/