asp.net(C#)中给控件添加客户端js事件的方法

时间:2022-09-14 11:05:47

放在服务器端,也可以用ajax来实现,不刷页面。但我觉得有更直接更简单方法,用一个js事件是可以实现的。 
  但,DropDownList不偈Button等控件提供了一些像"OnClientClick"前台事件,只有服务端事件。 
  想到,所有C#页面代码,最终都是生成HTML,js事件也是最终运在浏览器中,以Html为基础的。服务端控件最终生成的HTML控件有什么js事件,我们应该就能在aspx中给它添加相应的事件。 
DropDownList 生成的Htm是元素<Select>是有onchange事件的,所以我们也是可以给DropDownList添加onchange()事件,我们通常用的方法,在后台文件的Page_Load 事件中,给id为ddlExamType的DropDownList 添加onchange()事件: 
ddlExamType.Attributes.Add("onchange","SelecteChanged('"+this.ddlExamType.ClientID"')"); 
前台定义的js 函数:SelecteChanged() 

复制代码代码如下:


<script language="javascript"> 
function selectChange(objID) { 
var ddlExamType = document.getElementById(objID); 
if (bool) { 
…… 

else { 
…… 


</script> 


  总结: C#的服务端控件,生成html时对应控件有什么js事件,我们都能通过对控件 Attributes.Add()添加。