asp.netASPxTextBox等控件实现"回车模拟Tab"的常用代码整理
2023-06-13 09:14:16 时间
近期在做一个Web项目,我使用DevExpress第三方控件。
由于该控件使用技巧中文资料较少,还真够呛的,只能边摸索,边开发。
今天我要实现一些编辑框如ASPxTextBox、ASPxComboBox等控件回车模拟Tab的功能。这没办法,用户用惯了回车,讨厌按Tab来移动焦点(鼠标点击更麻烦)。
以ASPxTextBox为例,在ClientSideEvents属性中可设置许多客户端JavaScript代码,其中KeyPress就是我要写的。
首先,得准备要模拟Tab的JS代码,这网上很多,我随便D了一个,试试有用,贴出如下:
复制代码代码如下:
由于该控件使用技巧中文资料较少,还真够呛的,只能边摸索,边开发。
今天我要实现一些编辑框如ASPxTextBox、ASPxComboBox等控件回车模拟Tab的功能。这没办法,用户用惯了回车,讨厌按Tab来移动焦点(鼠标点击更麻烦)。
以ASPxTextBox为例,在ClientSideEvents属性中可设置许多客户端JavaScript代码,其中KeyPress就是我要写的。
首先,得准备要模拟Tab的JS代码,这网上很多,我随便D了一个,试试有用,贴出如下:
//回车键模拟tab在onkeydown中
functionEnterAsTab()
{
varel_keydown=window.event.srcElement;
varlen;
if((window.event.keyCode==13&&el_keydown.type!="textarea")
||(window.event.keyCode==13&&window.event.ctrlKey&&el_keydown.type=="textarea"))
{
len=document.forms(0).length;
for(vari=0;i<len;i++)
{
if(document.forms(0).elements(i)==el_keydown)
{
//跳过hidden、disabled类型的输入框
//如果下个控件是按钮,也要求跳过再下一个,直到非按钮或无控件
do
{
i++;
if(i>=len)
return;
}
while((document.forms(0).elements(i).disabled||document.forms(0).elements(i).type=="hidden"
||document.forms(0).elements(i).type=="button"
||document.forms(0).elements(i).type=="submit"
||document.forms(0).elements(i).type=="reset"
||document.forms(0).elements(i).type=="href"));
//alert("对象"+i+"类型:"+document.forms(0).elements(i).type);
document.forms(0).elements(i).focus();
document.forms(0).elements(i).select();
event.returnValue=false;//抛弃多余的回车,否则进入textarea、button会直接送出回车!
return;
}
}
}
}
接着,就在ASPxEditBox控件HTML代码中插入KeyPress事件代码了。
<dxe:ASPxTextBoxID="txtCodeName"runat="server"Width="170px"
Text="<%#Bind("CodeName")%>">
<ClientSideEventsKeyPress="function(s,e){varkey=event.keyCode;
if(key==13){EnterAsTab();}}"/>
</dxe:ASPxTextBox>
先获取键值event.keyCode,赋值给key。然后判断键值是否等于13(回车键),如果是,则调用前面的JS函数EnterAsTab()。
其它控件类似。
相关文章
- ASP构建Web应用MySQL必不可少(asp需要mysql)
- ASP转换MySQL掌握数据库迁移技术(asp转换为mysql)
- ASP驱动MySQL简单快捷高效(asp调用mysql)
- 优雅的结合ASP与MySQL的SQL语句(asp和mysql语句)
- ASP操作MySQL简易指南轻松删除记录(asp删除记录mysql)
- 用ASP编写MySQL数据库程序简单又高效(asp使用mysql代码)
- MySQL语句实现 ASP 程序开发精彩功能(asp mysql语句)
- MySQL与ASP结合,为网站带来绿色发展(asp mysql 绿色)
- ASP搭配MySQL实现完美源代码(asp mysql源代码)
- 数据库ASP连接Oracle数据库简单实现实时数据访问(asp连续oracle)
- ASP小偷(远程数据获取)程序入门教程
- XML加ASP实现网页“本地化”
- asp简单的ajax留言板(采用三层模式)
- IIS7下运行Access+Asp的解决方法
- ASP实现长文章分页
- asp论坛在线人数统计研究
- 比较不错的asp模板引终极讲解(WEB开发之ASP模式)
- PostHttpPage用asp是实现模拟登录效果的代码
- 通过客户端验证上传图片文件大小的ASP源码
- asp.net继承自Page实现统一页面验证与错误处理
- asp.net下载文件时输出文件内容
- asp.net读取并修改config文件实现代码
- asp.net无法获取的内部内容,因为该内容不是文本的解决方法
- ASP中Utf-8与Gb2312编码转换乱码问题的解决方法页面编码声明
- ASP.NET网站使用Kindeditor富文本编辑器配置步骤