我看到有一个问题here,但没有明确的答案。有任何想法如何返回使用Javascript或JSON的PartialView。我正在做一个AJAX帖子,成功后它渲染了PartialView,但后来需要运行一些javascript或检查JSON结果。
答案 0 :(得分:1)
public static string RenderPartialToString(string controlName, object viewData, object model, System.Web.Routing.RequestContext viewContext)
{
ViewDataDictionary vd = new ViewDataDictionary(viewData);
ViewPage vp = new ViewPage { ViewData = vd };
vp.ViewData = vd;
vp.ViewData.Model = model;
vp.ViewContext = new ViewContext();
vp.Url = new UrlHelper(viewContext);
Control control = vp.LoadControl(controlName);
vp.Controls.Add(control);
StringBuilder sb = new StringBuilder();
using (StringWriter sw = new StringWriter(sb))
{
using (HtmlTextWriter tw = new HtmlTextWriter(sw))
{
vp.RenderControl(tw);
}
}
return sb.ToString();
}
答案 1 :(得分:0)
我认为为其他问题提供的答案可能是您最好的选择。您不能突然有另一个onSuccess
方法签名,其中另一个参数与JSON对象一起添加,因此您会遇到一个返回对象。从逻辑上讲,此对象必须包含您的视图和JSON对象,这意味着对象本身必须是JSON对象。