ASP.NET - 控制生命周期

时间:2009-06-16 18:33:44

标签: asp.net

我有一个ASP.NET页面,我在其中动态构建LinkBut​​ton和TextBox元素。这些元素是在页面的OnInit事件期间构建的。然后,用户可以执行更改这些元素的值的操作。这些元素的值通过JavaScript更改。当用户单击按钮时,将触发服务器端事件。此事件解析每个控件中的值。我注意到TextBox的值是正确的,但LinkBut​​ton的值不是。

是否只能动态生成ASP.NET中的某些类型的控件并在服务器端检索它们的值?

谢谢。

4 个答案:

答案 0 :(得分:1)

您无法在服务器端获取链接按钮的值。您只能在服务器端获取表单元素的值。

如果要将更多值传递给服务器端,可以使用隐藏的输入元素。

答案 1 :(得分:0)

不,通常你可以创建你喜欢的任何元素,只要你在OnInit事件中创建它,或者你添加了INamingContainer(marker)接口,你应该覆盖CreateChildControls()方法并在那里创建你的元素。 p>

但是你通过JavaScript更改LinkBut​​ton的值是什么意思?你究竟对LinkBut​​ton有什么改变?你能提供更多细节吗?

答案 2 :(得分:0)

确保为要通过服务器代码检索的每个表单元素设置“runat = server”属性,并且您具有与每个表单元素相关联的ID。

答案 3 :(得分:0)

文本框正常工作,因为文本框的值实际上是在回发中发送的。但是linkbutton不会将任何内容发送回服务器。如果您需要在客户端上发回更改的内容,则需要设置隐藏字段,然后使用该值修改链接按钮。