如何根据模型值隐藏按钮?

问题描述 投票:0回答:2

我有以下逻辑:

if (Model != null && Model.StatusMessage != "New Override")
{
    <button type="submit" id="btnSubmit" name="Command" value="Delete" >Delete</button>
}

想要连续显示 2 个按钮(“保存”按钮和“删除”按钮)。

但是,当我添加

table
标签并将“保存”按钮放入第一个
td
并将上面的“删除”按钮放入同一个
td
中的第二个
tr
时,逻辑停止工作 - 它无法被识别为代码;并且被认为只是屏幕上的文本。

如何在一个水平行中有 2 个按钮;仅当

Model.Status
告诉我该记录存在时才显示“删除”按钮?

html asp.net-mvc razor
2个回答
1
投票

您在视图中这样做吗?如果是这样,请输入

@if
而不是
if
。我假设你的代码如下所示...

<table>
  <tr>
    <td></td>
     @if(){
       <td></td>
     }
  </tr>
</table>
  • 将保存按钮放在第一个
    td
  • @if
    是你的逻辑应该去的地方,如果满足条件,则为删除按钮打印另一个
    td
    ,否则不执行任何操作

如果您需要更多帮助,请发布您如何构建表格的代码。谢谢。


0
投票

这是一种使用 css 和内联 if 来隐藏/显示按钮的非常简单的方法:

<button id="btnSubmit" type="submit" name="Command" value="Delete" style="display:@(Model.StatusMessage != "New Override"?"block":"none")">Delete</button>

使用显示块/无样式还可以阻止按钮在隐藏时占用空间。

© www.soinside.com 2019 - 2024. All rights reserved.