在JS中如何获取服务器控件

在JS中如何获取服务器控件,第1张

好问题,看来无人回答。

原理是在服务器端把服务器控件的客户端id以js的形式输出即可。比如你有个服务器端控件的id是test1,那你就在aspx中写

<script>

var myControllerId = <%=test1.ClientId%>

</script>

然后在其他js中用document.getElementById(myControllerId)即可获得该服务器控件。

//1、JS脚本为服务器控件赋值

语法:document.getElementById('<%=服务器控件名.ClientID%>')

document.getElementById('<%=TextBox2.ClientID%>‘).value= “aaaaa”

<anthem:TextBox ID= "TextBox2" runat= "server" Text= "bbbbb" ></anthem:TextBox>//这个是anthem的控件,跟asp.Net ajax框架的控件一样.

//2、JS脚本为服务器中用户控件中的控件赋值

语法:document.getElementById("<%=服务器控件名.ClientID%>"+"_用户控件中控件名")

document.getElementById( "<%=UserInfoControl1.ClientID%>"+"_txtBAname").value= “aaaaa”

页面使用的用户控件: <uc1:UserInfoControl ID= "UserInfoControl1" runat= "server" />

用户控件代码:

<anthem:TextBox ID="txtBAname" runat="server" Width="64px" CssClass="lankuang" ></anthem:TextBox>

如果js为服务器控件Lable赋值的话,语法为:

document.getElementById("<%=CaseControl1.ClientID%>"+ "_lblZhusu").innerHTML= "aaaaaaa"

但是由于label映射到客户端是Div标签,所以后台取的还是原来的值

虽然我不知道你是用什么语言开发的

但是我知道在浏览器中id为'txt_sbsl'不止一个,所以用下面的方法也是去不到的

var

s_fssl

=

document.getElementById('txt_sbsl').Text

你只有去遍历Name为'c_sbsl'的控件


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/277254.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-20
下一篇2023-04-20

发表评论

登录后才能评论

评论列表(0条)

    保存