【问题标题】:How to Hide Table in MVC View when there is No Data?没有数据时如何在 MVC 视图中隐藏表格?
【发布时间】:2014-05-16 15:45:41
【问题描述】:

我正在使用 Linq 填充我的数据表。

我有硬编码的标题。并用 Linq 填充正文列。以下是我的代码。

<table id="tableID">
                <thead>
                    <tr>
                        <th>Name</th>
                        <th>ID</th>
                        <th style="width:2%;"></th>
                    </tr>
                </thead>
                <tbody>
                     @if(Model.Values !=null)
                {
                    foreach(var value in Model.Values)
                    {   
                        <tr>
                            <td>@value.Name</td>
                            <td>@value.ID</td>
                        </tr>
                    }
                }


                </tbody>
            </table>

我想在这里做什么,如果没有数据表不应该是可见的。我想在创建表之前移动我的条件检查模型是否返回 null,但它会抛出异常。我对 MVC 相当陌生。任何建议表示赞赏。 谢谢

【问题讨论】:

    标签: asp.net-mvc linq asp.net-mvc-3


    【解决方案1】:

    只需在表格周围放置一个if 以检查属性是否不为空并且该列表的计数是否大于 0,然后应该呈现表格。

     @if(Model  != null)
        {
        if(Model.Values != null && Model.Values.Count != 0)
        {
        <table id="tableID">
                        <thead>
                            <tr>
                                <th>Name</th>
                                <th>ID</th>
                                <th style="width:2%;"></th>
                            </tr>
                        </thead>
                        <tbody>
    
                            @foreach(var value in Model.Values)
                            {   
                                <tr>
                                    <td>@value.Name</td>
                                    <td>@value.ID</td>
                                </tr>
                            }
                        </tbody>
                    </table>
        }
    }
    

    【讨论】:

    • 我最初考虑过,但遇到编译错误。但这是解决方案。只需稍作编辑即可将其标记为答案。
    • 必须在 foreach 中添加 @ 以防止编译错误。有了 等标记后,您需要再次添加 @ 符号以进行代码查找。
    • 在foreach前添加@符号
    • 你需要添加它。为了防止编译错误。检查我上面的评论。在@symbol 之后添加剃刀标记后,它会丢失代码块中的引用。代码查找参考需要再次添加@。
    • 谢谢先生!现在像魅力一样工作。
    猜你喜欢
    • 2017-01-05
    • 2017-04-06
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-03
    • 1970-01-01
    相关资源
    最近更新 更多