![](/img/trans.png)
[英]Passing HTML table information from cshtml to method onpost cshtml.cs using PageModel
[英]How do I manipulate the DOM from the CSHTML.CS page?
我试图根据隐藏代码中用户的权限删除某些Web应用程序按钮。
我试图触发javascript onload来删除指定的DOM元素,但是该页面将首先加载,然后在DOM之后将被修改。 我希望在页面加载之前先修改DOM。
您不希望依靠JavaScript来确保安全是正确的,因为任何精通JavaScript的人都可以解决它。
在您的cshtml页面中使用Razor语法甚至不要将其放在首位。 文档在这里 ,但实际上您只是这样做:
@if ([check if user has permission]) {
<button>Do Something</button>
}
该语句在您的服务器上评估。 因此,如果用户没有权限,该按钮将永远不会放在页面的第一位。
如果您具有按钮所依赖的JavaScript,则也可以通过执行相同的操作将其隐藏:
@if ([check if user has permission]) {
<script>
function doSomething() {
//do something
}
</script>
}
一个警告:如果您在一个已经存在的<script>
标记内执行此操作,则需要将条件JavaScript放在<text>
标记内,以便Razor引擎不会尝试解释JavaScript:
<script>
@if (true) {
<text>
function doSomething() {
//do something
}
</text>
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.