extjs 2.0 回车切换表单,支持chrome,firefox,ie

简介: /** * 表单全键盘导航功能 xFocus:可选参数,用于设定页面加载完成后默认获取焦点的表单项,支持索引号和id/dom类型参数传入。 */ var keyNav = function(xFocus) { var run = function() { //查找所有非隐藏的录入项,排除掉cs...
 
/**
* 表单全键盘导航功能 xFocus:可选参数,用于设定页面加载完成后默认获取焦点的表单项,支持索引号和id/dom类型参数传入。
*/
var keyNav = function(xFocus) {
var run = function() {
//查找所有非隐藏的录入项,排除掉css的class等于"x-tbar-page-number"的项,就是Ext Grid的分页条中的一个输入框
//
遇到类似特殊情况都可以这么排除
var all = Ext.DomQuery.select('input[type!=hidden][class!="x-tbar-page-number"]');
Ext.each(all, function(o, i, all) { // 遍历并添加enter的监听
Ext.get(o).addKeyMap( {
key :13,
fn : function() {
try {
all[i + 1].focus();
} catch (e) {
event.keyCode = 9;
}
if (all[i + 1] && /button|reset|submit/.test(all[i + 1].type)) {
all[i + 1].click(); // 如果是按钮则触发click事件
}
return true;
}
})
});

document.body.focus(); // 使页面获取焦点,否则下面设定默认焦点的功能有时不灵验
try {
var el;
if (typeof eval(xFocus) == 'object') { // 如果传入的是id或dom节点
el = Ext.getDom(xFocus).tagName == 'input' ? Ext.getDom(xFocus) : Ext.get(xFocus).first('input', true); // 找到input框
} else {
el = all[xFocus || 0]; // 通过索引号找
}
el.focus();
} catch (e) {
}
}
Ext.isReady ? run() : Ext.onReady(run); // 页面加载完成后添加表单导航
}
目录
相关文章
|
8月前
|
Web App开发 JavaScript
JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)
JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)
847 0
|
9月前
|
Web App开发 UED C++
在chrome浏览器中调用IE浏览器并访问(openIE.reg自定义协议)
在chrome浏览器中调用IE浏览器并访问(openIE.reg自定义协议)
|
10月前
|
Web App开发 前端开发
区分IE6,IE7,IE8,IE9,FireFox,Chrome浏览器的CSS hack
区分IE6,IE7,IE8,IE9,FireFox,Chrome浏览器的CSS hack
|
Web App开发 缓存 网络协议
chrome谷歌浏览器&firefox火狐清除dns缓存的办法
chrome谷歌浏览器&firefox火狐清除dns缓存的办法
437 0
chrome谷歌浏览器&firefox火狐清除dns缓存的办法
|
Web App开发 安全
接口框架中WebDriver启动IE、Firefox和Chrome浏览器
接口框架中WebDriver启动IE、Firefox和Chrome浏览器
接口框架中WebDriver启动IE、Firefox和Chrome浏览器
|
Web App开发 开发者
使用 IE 或Chrome等浏览器,通过网络抓包的形式,查看发送请求时的网络
使用 IE 或Chrome等浏览器,通过网络抓包的形式,查看发送请求时的网络
348 0
使用 IE 或Chrome等浏览器,通过网络抓包的形式,查看发送请求时的网络
|
Web App开发 数据安全/隐私保护
&nbsp在IE和FireFox中显示不一致
在做新闻发布系统后台登陆界面时,为了界面美观,想在“密码”二字中间添加空格,从而让“用户名”、“密 码”、“验证码”垂直对齐。
&nbsp在IE和FireFox中显示不一致
|
4月前
|
Web App开发 Linux 数据安全/隐私保护
Docker本地部署Firefox火狐浏览器并远程访问
Docker本地部署Firefox火狐浏览器并远程访问
|
3月前
|
Web App开发 Linux 数据安全/隐私保护
Docker本地部署开源浏览器Firefox并远程访问进行测试
Docker本地部署开源浏览器Firefox并远程访问进行测试
139 1
|
8月前
|
数据采集 Web App开发 Python
使用Python爬虫获取Firefox浏览器的用户评价和反馈
使用Python爬虫获取Firefox浏览器的用户评价和反馈