1

ASP .net MVC の HTML ヘルパー メソッドを使用して、テーブル td タグ内にいくつかの DIV をレンダリングしようとしています。何らかの理由で、div がレンダリングされていません。これが私のサンプルコードです。私のモデルには、2 つのプロパティ ID と文字列のリストがあります。文字列は基本的に HTML DIV タグです。

<table>
<tr>
 <th>ID</th>
 <th>Schedule</th>
</tr>
<% foreach (var item in Model) { %>
  <tr>
    <td><%: Html.DisplayFor(modelItem => item.ID) %></td>
    <td>
       <% foreach (var bar in item.Details)
        {
           Html.DisplayFor(modelItem => bar);
        }       
        %>
    </td>
   </tr>
 <% } %>
</table>

ビューには ID が取り込まれますが、DIV タグは取り込まれません。誰かが私が間違っている可能性があることを指摘できますか。

ありがとう、ジャビッド

4

2 に答える 2

1

<%: %>あなたは周りが欠けていますHtml.DisplayFor

<td>
   <% foreach (var bar in item.Details) { %>
       <%: Html.DisplayFor(modelItem => bar) %>
   <% } %>
</td>

Html.DisplayForは Response に直接書き込まないため、レンダリングされたテンプレートを として返すだけMvcHtmlStringなので、 で「出力」する必要があり<%: %>ます。

于 2012-06-01T21:08:39.733 に答える
0

jQueryの.getJSONを.htmlメソッドと組み合わせて使用​​すると、DIVを含むHTMLマークアップを吐き出すことができます。

   <script>
        $(document).ready(
                        function () {
                            $("#Button2").click(
                                    function () {
                                        $("#ohyeah").html("blah blah blah");
                                        var jsonlisteningobject = {};
                                        $.getJSON("/home/somefoo", null, function (data) {
                                            var div = $('#ohyeah');
                                            div.html("<td>" + data.someNumber + "</td><td>" + data.someString1 + "</td><td>" + data.someString2 + "</td><td>" + data.someListofStrings[3] + "</td>");
                                        }
                                            );
                                        $.getJSON("/home/someHTML", null, function (data) {
                                            $("#someHTMLstuff").html(data);

                                        });
                                    }
                                );

        });
    </script>

「someHTMLstuff」と「ohyeah」は、ページのDIV要素にすることができます。

于 2012-06-01T21:13:44.717 に答える