asp.net2.0中,客户端程序如何访问服务器端控件?

来源:百度知道 编辑:UC知道 时间:2024/05/16 18:29:45
好像服务器端控件在生成html页面时的名字和设计时的名字不一样了,客户端程序怎么访问服务器端控件呢?
我知道服务器端是生成html控件发送到客户端的,但是2.0以前是服务器端的ID是什么,发送到客户端时也叫那个ID,这样在客户端脚本里就可以通过ID来访问那个控件,比如:document.all["textbox1"].value='2';
但是2.0以后生成的html控件不叫那个名字了,而是前面加了一堆标识,不知道有没有规律,或者还有没有其他方法可以实现在客户端脚本里访问那个控件?

我已经找到了答案,在msdn上找到的:Control.ClientID

客户端这么访问服务器的控件,是编程方面的,只要这样 <asp:button id="UserName" ranat="server"/>
就是服务器端的控件了,ranat="server" 运行在服务器 ,id 就是编程时用到的名称.
你想在在客户端访问服务器端的控件,时在服务器端写代码来实现的,时的,在查看源代码的时候,时自动转化成了HTML代码,有些控件在设计时为了方面,直接绑定数据源,比如:TreeView控件在绑定SiteMapDateSource,为了方面在编写代码的时候是ASP.NET的代码,但是在执行后,网站的源代码就把它转化成了ASP的比如:有Note节点等...

服务器端控件会被ASP.NET解析为标准Html标记及相应的javascript脚本发送到客户端,客户端程序实际上还是处理的标准Html标记。至于名字是由ASP.NET自动命名的。

应该是根据ID来的,你看那个aspx文件的html代码,不管他运行时生成是那一类,id是不会变的, 如panel控件,运行时转换成div标签