摘要
是否可以通过AJAX动态下载UserControl的内容,将其插入HTML,将页面回传到服务器以及服务器是否能够处理动态加载的控件?
特别是我正在多次这样做,以创建向页面中的现有表结构“添加行”的功能。
更多详情
我已经编写了ASP.NET代码,使用<asp:ScriptManager>
通过AJAX成功下载UserControl的内容,并将新下载的HTML放入当前文档的正确位置。
这很好,因为所有数据保存也都是通过AJAX进行的,因此我很容易构建数据以返回服务器。
问题的一部分是,如果UserControl已作为原始页面的一部分加载,那么其中的控件将被赋予UniqueId ... ...
ctl100$container$repeater$ctl100$myTextBox
但是当通过AJAX路由加载到结构外部时,它会被赋予一个UniqueId ...
ctl100$myTextBox
...结果显然(显然)服务器不知道如何处理它。
所以我要做的是能够动态下载用户控件,并能够将其作为页面的一部分发回。
实现这一目标的标准方法是什么?
答案 0 :(得分:1)
标准的ASP.NET Web窗体方法使用UpdatePanel控件。有许多功能,如控件状态维护,事件处理,请求验证,要求必须呈现服务器控件并在回发时添加到页面控件的树中。