asp.net(C#)中给控件添加客户端js事件的方法
更新时间:2010年03月12日 20:50:02 作者:
今天做一个输入界面,有一需求根据一个DropDownList选择不同,后面部分出现不同的输入界面,若把响应事件放在服务端去做,得频繁刷页面。就想放在客户来处理显示和隐藏相应的输入界面。
放在服务器端,也可以用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()添加。
但,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()添加。
相关文章
ASP.NET MVC5网站开发之用户角色的后台管理1(七)
这篇文章主要为大家详细介绍了ASP.NET MVC5网站开发之用户角色的后台管理,感兴趣的小伙伴们可以参考一下2016-08-08
.NET Core中的HttpClientFactory类用法详解
本文详细讲解了.NET Core中的HttpClientFactory类的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-03-03
未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序。
如果你将应用程序生成x86而不是Any CPU时,在64位操作系统中不会出错错误,而在32位操作系统中可能会出现以下错误2012-11-11


最新评论