あなたのコントローラで次のメソッドを使用することができます使用して
protected string RenderPartialViewToString(string viewName, object model)
{
if (string.IsNullOrEmpty(viewName))
{
viewName = ControllerContext.RouteData.GetRequiredString("action");
}
ViewData.Model = model;
using (StringWriter sw = new StringWriter())
{
ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName);
ViewContext viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw);
viewResult.View.Render(viewContext, sw);
return sw.GetStringBuilder().ToString();
}
}
コールビューからこのアクション:
public string UpdateDivWithContent()
{
var yourModel = ... //make custom data to create your partial
return RenderPartialViewToString("YourPartialViewName", yourModel)
}
を私は基本的なコントローラに、このメソッドを置きます手動のAjaxコール:
$.ajax({
url: '@(Url.Action("UpdateDivWithContent","YourControllerName")'
type: 'POST',
data: {
//some params to be passed to the controller
},
success: function (result) {
//result is an html string of your customized partial view
$("#yourDivId").html(result);
}
});
バンプ。これを受け入れる人は? – mighele