JS如何使用ASP.NET服务器控件


ASP.NET服务器控件的强大使得.NET程序员方便很多,也轻松很多(当然,从事这个行业的人都知道这是一把双刃剑……)。但是服务器控件顾名思义是要请求服务器的,那么这样子就给客户端增加的带宽负担。这是开发人员和用户都不愿意看到的。

那么肯定有人在想怎样既能使用服务器控件(方便后台操作),又能让JS操作服务器控件(页面能处理的用JS处理)。这样子程序员方便了,用户也高兴了。办法当然是有的。具体实现如下:

<head>

<script type=”text/javascript”>

windows.onload = function(){

var mylbl = document.getElementById(‘<%=lblTest.ClientID %>’);

alert(mylbl.textContent);

}

</script>

</head>

<body>

<asp:Lable ID=”lblTest” runat=”server”>Test</asp:Lable>

</body>

对的,就是使用.ClientID这个属性。这样子就省事多了!

在网上看到很多人使用其生成HTML代码中的id,这样做可以,但是最大的问题就是稳定性太差。上面的方法简单,稳定性良好。

还有一个办法也是可行的:

那就是在服务器端注册一个JS脚本,在需要使用这个ID的时候再去注册,原因?页面对此回发到服务器之后,服务器控件的ID可能会发生变化,从而带来不可预知的结果,所以,在需要使用这个控件时向页面注册一段JS代码,然后在前台直接调用就OK了,例:

RegisterStartupScript(“check”,
“\n<script>\n” +function
check()\n” +
“{\n” +return alert(”” +
txtName.ClientID.ToString() + “”);\n” +
“}\n” +</script>\n”;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM