在使用asp.net进行web开发的过程中,经常会用到服务器控件,可是服务器控件又不像html那样可以易容的添加
javascript事件,处理,
那么怎么给服务器控件添加js事件呢,
这时我们可以使用成熟的javascript框架:jquery
在jquery中有为页面元素绑定事件的方法,就是 $("#ID").bind("click",function(){}) 这就为id为ID的元素绑定了click事件
我们知道服务器控件在生成html后的id是不变的,也就是为服务器控件指定的id也会是生成html那个元素的id
所以可以使用jquery为其绑定事件,
如:
为<asp:Button ID="deleteInfo" runat="server" Text="删除" CssClass="btn_2k3" OnClick="deleteInfo_Click" />绑定事件
那么代码如下:
$(document).ready(function(){
$("#deleteInfo").bind("click",function(){
return confirm('确定删除吗?');
})
})
还有一种特殊的情况,就是当服务器控件的Visible="false"时,那么生成的html的id就不再与服务器控件的id一致了。
那我们怎么解决呢:
可以把服务器控件放入一个display=none的层中,而不去设置服务器控件的visible=false
如:<div style="display:none">
<asp:Button ID="deleteInfo" runat="server" Text="删除" />
</div>
这样这个服务器控件就不可见了,而且id没有改变,我们还可以用js操作它。
![](https://img2024.cnblogs.com/blog/35695/202408/35695-20240813180353098-2140851696.jpg)