0

我们一直在使用 IScriptControl 将 javascript 对象绑定到我们的 UserControls 和 ServerControls,并且效果很好。

问题是 ASP.NET 似乎没有提供将 javascript 对象绑定到页面的方法。到目前为止,我们一直将普通函数放在全局命名空间中,但我对这种做法产生了严重的过敏。

将我们的函数包装到 javascript 类中并在页面上包含 javascript 文件很容易,但是如何实例化对象,如何从回调事件中引用它,以及如何从代码中将数据传递给它-后面,我还没想通。

或者更确切地说,到目前为止我们一直在使用的方法(隐藏字段、发出的 javascript 字符串等)真的让我很烦。

有人有更好的想法吗?

4

1 回答 1

0

JS 文件和页面之间没有任何关联,除非您构建它。使用脚本控件,存储状态的常见做法是隐藏字段(ACT 使用这种方法)。与服务器通信的唯一其他方法是通过 Web 服务调用、表单发布数据或调用 __doPostBack(但这不是 AJAX)。

您可以创建一些基础架构将两者链接在一起。使用脚本控件,服务器呈现 $create 语句以将属性和事件处理程序从服务器传递到客户端;回传到服务器的数据存储在隐藏变量中并在客户端(使用大多数脚本库)进行处理,因此脚本控件和 ACT 为您隐藏了很多,如果您愿意,您必须构建其中的一些自动化这个。研究客户端-服务器交互可能会帮助您了解如果您想自定义该做什么。

有趣的是,我在 codeplex 上为我的 Nucleo 项目(我的第三方库)考虑了同样的事情,但我还没有开始考虑它。

于 2010-04-02T12:02:21.677 回答