asp.net-mvc – 如何获取视图html并返回客户端
发布时间:2020-05-25 05:13:20 所属栏目:asp.Net 来源:互联网
导读:下面是返回jquery函数视图的代码片段,但我想知道如何提取或获取视图html并返回到客户端. $(function() { $(#myddl).change(function() { var url = $(this).data(url); var value = $(this).val(); $(#result).load(url,
|
下面是返回jquery函数视图的代码片段,但我想知道如何提取或获取视图html并返回到客户端. $(function() {
$('#myddl').change(function() {
var url = $(this).data('url');
var value = $(this).val();
$('#result').load(url,{ value: value })
});
});
<div id="result"></div>
在Foo动作中你可以返回一个局部视图: public ActionResult Foo(string value)
{
SomeModel model = ...
return PartialView(model);
}
在web形式这种方式我延长usercontrols或任何控件相关的HTML. System.Web.UI.Page pageHolder = new System.Web.UI.Page();
BBAReman.facebox.FeedBack ctl = (BBAReman.facebox.FeedBack)pageHolder.LoadControl("~/UserControls/FeedBack.ascx");
System.Web.UI.HtmlControls.HtmlForm tempForm = new System.Web.UI.HtmlControls.HtmlForm();
tempForm.Controls.Add(ctl);
pageHolder.Controls.Add(tempForm);
StringWriter output = new StringWriter();
HttpContext.Current.Server.Execute(pageHolder,output,false);
outputToReturn = output.ToString();
所以如何在mvc中做同样的事情.我想知道如何从动作方法中获取视图html.谢谢 解决方法您可以使用此方法,从控制器传递ActionResult并从视图中返回htmlprivate string RenderActionResultToString(ActionResult result)
{
// Create memory writer.
var sb = new StringBuilder();
var memWriter = new StringWriter(sb);
// Create fake http context to render the view.
var fakeResponse = new HttpResponse(memWriter);
var fakeContext = new HttpContext(System.Web.HttpContext.Current.Request,fakeResponse);
var fakeControllerContext = new ControllerContext(
new HttpContextWrapper(fakeContext),this.ControllerContext.RouteData,this.ControllerContext.Controller);
var oldContext = System.Web.HttpContext.Current;
System.Web.HttpContext.Current = fakeContext;
// Render the view.
result.ExecuteResult(fakeControllerContext);
// Restore old context.
System.Web.HttpContext.Current = oldContext;
// Flush memory and return output.
memWriter.Flush();
return sb.ToString();
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 是否需要在web.config中保护连接字符串?
- asp.net-mvc-3 – Autofac等同于Ninject的WhenInjectedInto
- asp.net – UpdatePanel中的动态创建控件?
- asp.net – jQuery UI对话验证
- asp.net – MiniProfiler.Stop()上的MVC Mini Profiler异常
- asp.net – 如果表单字段为空,如何将NULL插入数据库
- asp.net-mvc – 如何使用绑定前缀?
- asp.net-mvc – KendoUI网格显示总记录数
- asp.net-mvc – MVC 5 Bundle错误
- asp.net-mvc – 有一个强大的方法来删除ASP.NET MVC中的Mod
