我正在创建一些将继承自我的类 BaseControl 的用户控件,该类继承自 UserControl。BaseControl 将包含一些我需要的“东西”。其中之一是名为 ControlValue 的字符串属性。我需要一种从 JavaScript 访问它的方法。我一直在阅读一些关于 RegisterExpandoAttribute() 的内容,但我不确定如何让它工作或我应该把它放在哪里,因为该属性可以随时更改值。我宁愿避免隐藏字段。
任何帮助,将不胜感激。
我正在创建一些将继承自我的类 BaseControl 的用户控件,该类继承自 UserControl。BaseControl 将包含一些我需要的“东西”。其中之一是名为 ControlValue 的字符串属性。我需要一种从 JavaScript 访问它的方法。我一直在阅读一些关于 RegisterExpandoAttribute() 的内容,但我不确定如何让它工作或我应该把它放在哪里,因为该属性可以随时更改值。我宁愿避免隐藏字段。
任何帮助,将不胜感激。
做到这一点的最佳方法取决于很多事情。就像您的自定义控件正在创建什么样的 HTML。
但是,最通用的方法(适用于所有情况的方法)是注册一些设置全局值的 javascript。
像这样的东西应该工作:
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
cs.RegisterStartupScript(this.GetType(), "setupglobal",
"<script type=text/javascript>var hiImAGlobal = 'sam'; </script>");
请记住,我并不是说这是最好的方法,只是一种可行的方法。
这是 MSDN 文档:http: //msdn.microsoft.com/en-us/library/asz8zsxy