0

私は MVC を初めて使用し、検索テキスト ボックス + ボタン、ナビゲーション タブとテーブルを含むビューを持っています。

検索条件が入力され、ボタンがクリックされた場合にのみテーブルに値が入力されるようにしたいと思います。

私が今抱えている問題は、ビューのテーブル セクションがレンダリングされ、ページの読み込み時に null オブジェクト参照エラーが返されることです。

jquery/java関数を使用する以外に、検索条件が入力されてボタンがクリックされたときにのみテーブルに値を入力するにはどうすればよいですか?

2 つの個別のビューを作成する必要がありますか (1 つはテーブルあり、もう 1 つはテーブルなし)?

ここに私の見解の一部があります:

        <div class="searchBox">

              <label>Please search here
                        <input type="text" name="searchTerm" id="searchTerm" value="<%= !string.IsNullOrEmpty((string) ViewData["SearchTerm"]) ? Html.Encode(ViewData["SearchTerm"]) : "" %>" />
                        <input type="button" value="Add" />
                </label>
        </div>

        <ul class="navigation">
    <li><a class="selected" href="#name" >Person1</a></li>
    <li><a href="#dob">Person2</a></li>
    <li><a href="#address">Person3</a></li>
    <li><a href="#status">Person4</a></li>
    </ul>

    <div class="tabSection">
    <div class="basic">


        <table id="person" class="gridview">
            <thead>
                <tr>
                    <th>name</th>
                    <th>dob</th>
                    <th>address</th>
                    <th></th>
                </tr>
                <tr>
                    <td><%= Model.name %></td>
                    <td><%= Model.dob%></td>
                    <td><%= Model.address%></td>
                    <td></td>
                </tr>
            </thead>
        </table>

</div>
</div>
4

1 に答える 1

2

これでテーブルをラップするだけです:

@if (Model != null)
{
    // table code
}

また、テーブル ロジックを部分ビューに配置することを検討し、部分ビューに if ステートメントを含めることもできます。そうすれば、メイン ビューでHtml.RenderPartial("PARTAILVIEWNAME");、毎回 if ステートメントでテーブルをラップすることを忘れずに、必要な数のビューに同じテーブルを含めることができます。

于 2012-07-07T21:17:29.917 に答える