akd*_*akd 42 html asp.net-mvc jquery razor
这就是我现在所拥有的
 hidden="@(Model.IsOwnedByUser||!Model.CanEdit)"
这在Chrome上工作正常,但在Internet Explorer上并不隐藏
我也试过可见性设置假但没有运气.
然后我发现了另一种风格如下
style="@(Model.IsOwnedByUser||!Model.CanEdit)?'display:none'""
我无法让它奏效.使用Razor语法隐藏元素的正确格式是什么?
或者我会使用Jquery来隐藏元素.但实际上是否可以打印出jquery语句来隐藏页面加载时的元素?
Shy*_*yju 91
以下代码应根据您的Model的CanEditProperty值应用不同的CSS类.
<div class="@(Model.CanEdit?"visible-item":"hidden-item")">Some links</div>
但是如果像编辑/删除链接那样重要,那么你不应该只是隐藏,因为人们可以在他们的浏览器中更新css类/ HTML标记并访问你的重要链接.相反,你应该只是不将重要的东西渲染到浏览器.
@if(Model.CanEdit)
{
  <div>Edit/Delete link goes here</div>
}
Yur*_*uri 28
尝试:
<div style="@(Model.booleanVariable ? "display:block" : "display:none")">Some links</div>
将"显示"样式属性与bool模型属性一起使用以定义div的可见性.