`
我改名了
  • 浏览: 87880 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

js 回车 转 tab

    博客分类:
  • JS
 
阅读更多

<script language="JavaScript"> 
<!-- 
 
// 用途:enter 转化成tab 
//使用:onload ="initEnter2Tab()" form标记加上 <form name="frm" type="enter2tab">...</form> 
var isCycle = false; //当光标到最后一个元素的时候,是否循环光标焦点, 
var iCurrent = -1; 
var frmName = "0"//input_form 
// 
function enterToTab()  //网页里按回车时焦点的转移 

  var e = document.activeElement; 
  if(e == null) return false; 
  //获得当前表单的名字 
  for(i=0;i<document.forms.length;i++){   
 for(var el in document.forms[i].elements){ 
  if(e.UniqueID == el.UniqueID){ 
   frmName = document.forms[i].name 
  }     
 }  
  } 
  if(window.event.keyCode == 13) 
  {   
   switch(e.tagName)//标签类型 
 { 
     case "INPUT": 
   handleInput(e) 
   break; 
     case "SELECT": 
   handleSelect(e)    
   break;   
     case "TEXTAREA": 
   handleTextarea(e) 
   break;    
         default:   
    //window.status = "未知的标签名称:"+e.tagName+",不能移动焦点!" 
    }   
  }// end if 

//处理input 标签类型 
function handleInput(e) 

   switch(e.type) 
 { 
     case "text": 
  case "password": 
  case "checkbox": 
  case "radio": 
  case "file": 
   moveFocusToNextElement(e) 
   break;  
  case "submit"://处理有提交按钮的情况 
  case "button": 
   if(isHandleSubmit(e)){ 
    handleSubmit(e) 
    focusOnNextElement(document.forms[frmName].elements,iCurrent-1) 
    break; 
   } 
   moveFocusToNextElement(e) 
   break;             
         default:   
    } 

//处理select 标签类型 
function handleSelect(e) 

 moveFocusToNextElement(e) 

//处理textarea 标签类型 
function handleTextarea(e) 

 moveFocusToNextElement(e) 

//移动到下一个元素 
function moveFocusToNextElement(e) 

  var oE = document.forms[frmName].elements, iCurentPos=-1; 
  for(var i=0; i<oE.length; i++) 
  { 
    if(oE[i] == e) iCurentPos = i; 
    if(iCurentPos>-1 && iCurentPos+1<oE.length) 
    { 
    //把焦点设置到下一个可用的元素上   
  focusOnNextElement(oE,iCurentPos) 
    } 
  } 

//下一个可用元素得到焦点 n 元素的位置 
function focusOnNextElement(oElements,iIndex) 

 var oE = oElements 
 var oldIndex = iIndex  
  while(oE[iIndex+1].type =="hidden" || oE[iIndex+1].disabled || oE[iIndex+1].readOnly == true || oE[iIndex+1].style.display == "none") 
  {  
   /* 
   window.status += "e.name = "+oE[iIndex+1].name 
   window.status += ";e.type = "+oE[iIndex+1].type 
   window.status += ";e.disabled = "+oE[iIndex+1].disabled 
   window.status += ";e.readOnly = "+oE[iIndex+1].readOnly+"." 
   */ 
   iIndex++; 
   if(iIndex+1 == oE.length) 
   { 
    if(isCycle){//设置焦点在第一元素 
     focusOnNextElement(oE,-1) 
    }     
    return; 
   }    
  }//end while 
  iCurrent = iIndex+1 
  oE[iCurrent].focus(); 
        window.event.keyCode    = 0; 
        window.event.returnValue= false;  
        return; 

//处理当前元素 
function handleSubmit(element) 

 element.click() 
 return;  

//判断是否处理提交 
function isHandleSubmit(element) 

 var ret = false; 
 if(element !=null && (element.id.toUpperCase() == "SUBMIT" || element.name.toUpperCase() == "SUBMIT" || element.isSubmit)){ 
  ret = true; 
 } 
 return ret;  

//初始化 initEnter2Tab() 
function initEnter2Tab() 

 for(i=0;i<document.forms.length;i++){ 
  if(document.forms[i].type !=null && document.forms[i].type == "enter2tab"){ 
   document.forms[i].onkeydown = function f(){enterToTab();}; 
  } 
 } 
 //文档初始化焦点 
 if(document.forms[0].elements != null) 
  focusOnNextElement(document.forms[0].elements,-1) 

//--> 
</script> 
<body onload="initEnter2Tab()"> 
<form method=post action="" type="enter2tab" name="aa"> 
<input type="text" name=""><input type="text" name=""><input type="submit"> 
</form> 

分享到:
评论

相关推荐

    回车变成Tab的解决方案

    函数和网上的一些代码,弄了一个可以满足上述需求的解决方案,它的特性包括: &lt;br/&gt; 全部JavaScript代码都封装在了一个用户控件"EnterAsTab_SubPage.ascx"中,哪个页面想要回车变Tab或者屏蔽掉回车键只要把...

    用回车键代替TAB。

    用回车键代替TAB。

    javascript 回车替换成TAB的脚本

    回车换Tab 方便,实现tab功能,屏蔽回车提交

    js 实现 Enter键实现Tab键功能

    js 实现 Enter键实现Tab键功能! 值得下载看看!资源免费,大家分享!!

    javascript回车完美实现tab切换功能

    主要介绍了javascript通过回车实现tab切换功能,需要的朋友可以参考下

    enter to tab

    enter键替换tab键!JS文件,使用时需要初始化,各标签最好能标识TableIndex更容易控制,具体操作可参考我的博客文章

    表单填写时用回车代替TAB的实现方法

    关键之处在于tabindex,其设计思想是:为每个表单元素设置一个tabindex,其值分别为前一个表单元素的tabindex的值加一,函数的功能就是当用户按下回车键时先将当前tabindex的值加一,而后逐一与每个表单元素的...

    敲回车换Tab键2012

    if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='textarea' && event.srcElement.type!...

    asp.net ASPxTextBox等控件实现回车模拟Tab的 常用代码整理

    近期在做一个Web项目,我使用DevExpress第三方控件。 由于该控件使用技巧中文资料... 首先,得准备要模拟Tab的JS代码,这网上很多,我随便D了一个,试试有用,贴出如下: 代码如下://回车键模拟tab 在onkeydown中 func

    Ext.net Enter实现Tab功能

    Ext.net Enter实现Tab功能

    JavaScript 回车 焦点切换

    回车键按下时,自动以Tab键方式在文本输入框之间进行焦点切换的JavaScript代码

    Enter转换为Tab的小例子(兼容IE,Firefox)

    介绍了Enter转换为Tab的小例子(兼容IE,Firefox),有需要的朋友可以参考一下

    jquery.ya-enter2tab:另一个进入 Tab 的 jQuery 插件

    jquery.ya-enter2tab.js世界上已经有一堆“进入标签”插件,但仍然很难找到一个完全符合我需求的插件。 所以,“Yet Another Enter to Tab”jQuery 插件就在这里。 :P 它提供以下功能: 让用户使用“enter”而不是...

    文本框中,回车键触发事件的js代码[多浏览器兼容]

    在文本框中输入完内容后,经常需要按回车,焦点跳到下个文本框,或者触发按钮事件

    程序天下:JavaScript实例自学手册

    7.2 回车实现Tab键功能 7.3 Ctrl+Enter提交数据 7.4 IE中屏蔽退格建(Back Space) 7.5 屏蔽键盘所有键 7.6 JavaScript捕获方向键 7.7 状态栏变化信息 7.8 状态栏的跑马灯效果 7.9 状态栏缩放文字 7.10 状态栏文字...

    《程序天下:JavaScript实例自学手册》光盘源码

    7.2 回车实现Tab键功能 7.3 Ctrl+Enter提交数据 7.4 IE中屏蔽退格建(Back Space) 7.5 屏蔽键盘所有键 7.6 JavaScript捕获方向键 7.7 状态栏变化信息 7.8 状态栏的跑马灯效果 7.9 状态栏缩放文字 7.10 状态栏文字...

    js 金额文本框实现代码

    案例1:回车实现Tab跳转。 响应文本框的onKeyDown事件,window.event.keyCode获得用户点击的keyCode。 (*)keyCode和ASCII不是完全一致,主键盘的1和小键盘的1的ASCII一样,但是keyCode不一样。回车的keyCode为 13...

    brackets-tab-tags:括号扩展,当在HTML或XML标记中按ENTER时自动添加选项卡

    一个非常简单的扩展,可以在HTML或XML标签之间添加换行符和制表符,就像Aptana Studio 3一样,并使用JavaScript和PHP括号以及CSS和预处理器来增强行为。如何使用简单的代码,如果你的光标是允许的缩进字符之间( &gt;&...

    ASP.NET基础控件-教程

     回车转换成Tab  DataGrid超级连接列  DataGrid行随鼠标变色  数字格式化  日期格式化  打开新的窗口并传送参数  为按钮添加对话框  删除表格选定记录  删除表格记录警告  关于日期格式  表格超连接列...

Global site tag (gtag.js) - Google Analytics