原理是在服务器端把服务器控件的客户端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'的控件
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)