这是我的代码:
@{
ViewBag.Title = "My page";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<script type="text/javascript">
$(document).ready(function () {
$('#menucontainer').hide();
});
</script>
<h2>My page</h2>
@foreach (List<MyClass> item in (List<MyClass>[])ViewData["myList"])
{
foreach (MyClass item1 in item)
{
if (item1.name.Equals("something"))
{
<script type="text/javascript">
$(document).ready(function () {
$('#idSomething').show();
});
</script>
continue;
}
}
break;
}
我在 if 中有一个断点{
。它被击中,然后它去continue;
。脚本中的代码:$('#idSomething').show();
永远不会被击中!这是为什么以及如何解决这个问题?
我也尝试过:
if (item1.name.Equals("something"))
{
@: ("#idSomething").show();
continue;
}
再说一次,show()
未命中调用断点。
我认为 Razor 不够聪明,无法自行处理此类事情,请尝试使用<text>
标记,以便它知道应该转储输出而不触及它:
@foreach (List<MyClass> item in (List<MyClass>[])ViewData["myList"])
{
foreach (MyClass item1 in item)
{
if (item1.name.Equals("something"))
{
<text>
<script type="text/javascript">
$(document).ready(function () {
$('#idSomething').show();
});
</script>
</text>
continue;
}
}
break;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)