0

如何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 元素中,然后使用 jQuery 来构建 url(那段代码被简化了,没有人会在不先检查的情况下添加 &name=value)

PS:写这个没有机会测试它,但至少应该给出一个关于如何做到这一点的想法。

于 2011-12-22T10:10:12.710 回答