asp.net-mvc – 如何获取视图html并返回客户端
发布时间:2020-12-16 00:01:50 所属栏目:asp.Net 来源:网络整理
导读:下面是返回jquery函数视图的代码片段,但我想知道如何提取或获取视图html并返回到客户端. $(function() { $('#myddl').change(function() { var url = $(this).data('url'); var value = $(this).val(); $('#result').load(url,{ value: value }) });});div i
下面是返回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并从视图中返回html
private 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-mvc – 除了UI“flair”,你用什么jQuery?
- asp.net-mvc – 如何在html.LabelFor中显示一些文本?
- asp.net核心 – .NET核心 – 解决方案,框架,导入,运行时
- asp.net – 文本框就像一个下划线
- asp.net – 无法将’System.Web.Profile.DefaultProfile’类
- Asp.Net MVC5 – Html.Action – 属性路由 – 导致异常的奇
- asp.net-mvc – 未找到MVC 6 404
- ASP.NET MVC集成EntLib实现“自动化”异常处理[实例篇]
- 可用.net控件库的比较
- asp.net-mvc – 如何在客户端Kendo UI网格中实现服务器端分
推荐文章
站长推荐
- 无法找到asp.net-mvc – System.Data.Entity.Dat
- asp.net-mvc – ASP.NET DisplayFormat dd / MM
- asp.net-mvc – ASP.NET MVC术语让我沮丧 – 为什
- .Net使用RabbitMQ
- asp.net-mvc – 如何在ASP .NET MVC中对参数进行
- asp.net – 我可以通过编程方式禁用更新面板吗?
- asp.net-mvc-4 – VS2012 RTM缺少.net 4.5和mvc项
- 如何在非ASP.net上下文中使用C#中的数据验证属性
- asp.net-mvc – MVC 5捆绑和Azure CDN(查询字符串
- asp.net-mvc – 使用带有IEnumerable的Html.Edit
热点阅读