将param传递给RenderPartial

时间:2012-01-15 12:29:22

标签: asp.net asp.net-mvc asp.net-mvc-2 c#-4.0 asp.net-4.0

我是asp.net mvc 2 WebSite。 有一页为:

   <div id="sidebar">
        <div id="navcontainer">
            <h2>
                Items:</h2>
            <ul id="navlist">
                <li id="active"><a href="#" id="current">item1</a></li>
                <li><a href="#">item2</a></li>
                <li><a href="#">item3</a></li>
                <li><a href="#">Item four</a></li>
                <li><a href="#">Item five</a></li>
            </ul>
        </div>
    </div>
    <div class="article">
        <%Html.RenderPartial("item1");%>
    </div>

我的部分视图(我的所有部分视图都包含静态HTML数据):

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>


<h1>
    Lorem</h1>
<p>
    In publishing and graphic design, lorem ipsum[p][1] is placeholder text (filler text) commonly used to demonstrate the graphics elements of a document or visual presentation, such as font, typography, and layout. The lorem ipsum text is typically a section of a Latin text by Cicero with words altered, added and removed that make it nonsensical in meaning and not proper Latin.
</p>

和控制器:

public class InfoController:Controller
{
        private DataManager _dataManager;
        public RegionsController(DataManager dataManager)
        {
            this._dataManager = dataManager;

        }

        public ActionResult info()
        {
            return View(); ;
        }
}

我想知道,当用户点击列表项时,此项必须作为RenderPartial的参数传递。怎么做?

2 个答案:

答案 0 :(得分:0)

编译页面时执行Html.RenderPartial方法。这发生在服务器上。您要求的是客户端的HTML动作。您可以通过对actionresult方法使用ajax调用来处理此问题,该方法返回可指向文章div的部分页面。这可能会有所帮助:

Walkthrough: Adding AJAX Call

答案 1 :(得分:0)

您可以使用Ajax动态更新<div class="article">内的内容。有关如何使用ajax加载部分视图的更多信息,请查看以下资源: