0

partial(with Html.RenderPartial()) を何度もレンダリングする方法。

またはhtml.Action("","")(部分的なビューを返すアクションを呼び出すことによって) 部分的なビューを何度もレンダリングするために使用する方法。

4

2 に答える 2

1

私の理解では、ParialViewをページに何度も表示する必要があります。これがあなたの質問であれば、ページに部分ビューをレンダリングする回数を示すコレクションのようなものがあります。

for(int i =0; i < 5;i++)
{
@Html.Partial("")
}
これにより、部分ビューが 5 回表示されます。

于 2011-12-22T11:53:31.273 に答える
0

jQuery の$.get()または$.ajax().

いくつかの html 要素を配置します ( <div class='myclass'>)

<div id='container>
  <div class='myclass' my-ajax-url='@Model.urlForWhatever' my-url-param='@Model.foo'>
  </div>

  <div class='myclass' my-ajax-url='@Model.urlForWhatever2' my-url-param='@Model.bar'>
  </div>

</div>

次のようなものを追加します。

$(document).ready(function () {
  var elems = $('.myclass').each(function () {
     // Perform Ajax call and render the output (contained in response)
     // the element is referreable using $(this) in the each function, so you can swap
     // its content via $(this).html().
     var url=$(this).attr('my-ajax-url') + '&param=' + $(this).attr('my-url-param');
     $.get(url, function(data) {
         $(this).html(data);
     });
  });
});

Ajax ヘルパーは優れていますが、ある種の機能には多少制限があることがわかりました。私はDOM要素内にデータを保存し、URLを構築するためにjQueryを使用することを好みます(そのコードは単純化されており、最初にチェックせずに &name=value を追加するものはありません)

PS: テストする機会がなくてもこれを書いていますが、少なくともこれを行う方法についてのアイデアを提供する必要があります。

于 2011-12-22T10:10:12.710 に答える