2014-09-03 55 views
0

这是我的脚本文件。在按下Enter键时,我在此脚本中调用我的div id =“AppContainer”。此代码仅在Chrome浏览器上工作,但不能在其他浏览器中工作。问题是什么?将光标移动到下一个文本字段当按Enter时

HTML: 
    <div id="AppContainer"> 
    <input type="text"> 
    <input type="text"> 
    </div> 

    <script type='text/javascript'> 
    $(document).ready(function(){ 
     $('#AppContainer input').keydown(function(e){ 
     if(e.keyCode==13){  

      if($(':input:eq(' + ($(':input').index(this) + 1) + ')').attr('type')=='submit'){// check for submit button and submit form on enter press 
      return true; 
      } 

      $(':input:eq(' + ($(':input').index(this) + 1) + ')').focus(); 

      return false; 
     } 

     }); 
    }); 
    </script> 
+1

它可以在所有的浏览器。 [FIDDLE](http://jsfiddle.net/hr0z5rjy/) – 2014-09-03 11:39:58

+0

尝试'if(e.which == 13){'改为。 jQuery将不同浏览器的关键代码属性标准化为'which'。 – 2014-09-03 11:45:42

回答

3

你可以试试这个:

$(function() { 
    $('#AppContainer').on('keydown', 'input:text', function (e) { 
     if (13 === e.which) { 
      e.stopPropagation(); 
      $(this).next('input:text').focus(); 
     } 
    }); 
}); 
+0

这是[小提琴](http://jsfiddle.net/to2v7rbt/2/) – Arvind 2014-09-03 12:51:53

相关问题