asp.net – 我们如何使用通用处理程序加载usercontrol?
发布时间:2020-12-16 03:25:45 所属栏目:asp.Net 来源:网络整理
导读:我想使用 jquery ajax加载用户控件.我发现一个可能是通过通用处理程序加载usercontrol.任何人都帮助我.这里是我用来调用控件的ajax代码. script type="text/javascript" function fillSigns() { $.ajax({ url: "usercontrolhandler.ashx?control=signs.ascx"
我想使用
jquery ajax加载用户控件.我发现一个可能是通过通用处理程序加载usercontrol.任何人都帮助我.这里是我用来调用控件的ajax代码.
<script type="text/javascript"> function fillSigns() { $.ajax({ url: "usercontrolhandler.ashx?control=signs.ascx",context: document.body,success: function (data) { $('#signdiv').html(data); } }); } </script> 这是处理程序文件中的代码 public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; Page page = new Page(); UserControl ctrl = (UserControl)page.LoadControl("~/" + context.Request["control"] + ".ascx"); page.Form.Controls.Add(ctrl); StringWriter stringWriter = new StringWriter(); HtmlTextWriter tw = new HtmlTextWriter(stringWriter); ctrl.RenderControl(tw); context.Response.Write(stringWriter.ToString()); } 此代码在下面显示的行中引发对象引用未找到错误. page.Form.Controls.Add(ctrl); 解决方法
似乎page.Form在这里为空,这就是为什么你有一个空引用异常.您可以将用户控件添加到页面的控件集合中:
page.Controls.Add(ctrl); 您还可以使用 StringWriter output = new StringWriter(); HttpContext.Current.Server.Execute(page,output,false); 最后看看Scott Guthrie的Tip/Trick: Cool UI Templating Technique to use with ASP.NET AJAX for non-UpdatePanel scenarios文章,它涵盖了你的问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – LoweredUserName的目的?
- asp.net-mvc – ASP.NET MVC 3解决方案结构,数据引用和Auto
- 不能在此路径中使用此配置节。如果在父级别上锁定了该节,便
- asp.net-mvc – ASP.NET MVC – 当参数为null时绑定空集合
- asp.net – 为什么我在查看浏览器功能时会得到这些奇怪的结
- asp.net – 如何显示更好的错误:“从客户端检测到一个潜在
- Task.Factory.StartNew在ASP.Net MVC中有帮助或有害吗?
- asp.net-mvc – 如何在Web表单和MVC2应用程序之间共享基于.
- asp.net-mvc – Json返回时如何读取modelstate错误?
- 使用Bitbucket Pipeline进行.Net Core项目的自动构建、测试
推荐文章
站长推荐
- asp.net-mvc-3 – EF 4.1上的MvcMiniProfiler代码
- asp.net-mvc – 初学者的分析Qn – ASP .NET MVC
- 强制ASP.NET文本框以$符号显示货币
- 实体框架 – 带有实体框架的MVC 3和ASP.Net脚手架
- asp.net-web-api – 构造函数依赖注入WebApi属性
- asp.net – 代码隐藏方法与Jquery AJAX调用
- 白话ASP.NET MVC之二:Controller激活系统的概览
- asp.net – 错误:必须声明标量变量“@data”
- asp.net-mvc-3 – 扩展MVC3剃刀Html.LabelFor添加
- asp.net – 可以在Web.config中配置一个位置,只允
热点阅读