JS实现Enter键跳转及控件获得焦点

复制代码 代码如下:

  //回车跳转

  jQuery(document).ready(function () {

  //$(':input:text:first').focus();

  jQuery(':input:enabled').addClass('enterIndex');

  // get only input tags with class data-entry

  textboxes = jQuery('.enterIndex');

  // now we check to see which browser is being used

  if (jQuery.browser.mozilla) {

  jQuery(textboxes).bind('keypress', CheckForEnter);

  } else {

  jQuery(textboxes).bind('keydown', CheckForEnter);

  }

  });

  function SetControlEnterEvent() {

  //$(':input:text:first').focus();

  $(':input:enabled').addClass('enterIndex');

  // get only input tags with class data-entry

  textboxes = $('.enterIndex');

  // now we check to see which browser is being used

  if ($.browser.mozilla) {

  $(textboxes).bind('keypress', CheckForEnter);

  } else {

  $(textboxes).bind('keydown', CheckForEnter);

  }

  }

  function CheckForEnter(event) {

  if (event.keyCode == 13 && $(this).attr('type') != 'button' && $(this).attr('type') != 'submit' && $(this).attr('type') != 'textarea' && $(this).attr('type') != 'reset') {

  var i = $('.enterIndex').index($(this));

  var n = $('.enterIndex').length;

  if (i < n - 1) {

  if ($(this).attr('type') != 'radio') {

  NextDOM($('.enterIndex'), i);

  }

  else {

  var last_radio = $('.enterIndex').index($('.enterIndex[type=radio][name=' + $(this).attr('name') + ']:last'));

  NextDOM($('.enterIndex'), last_radio);

  }

  }

  return false;

  }

  }

  function NextDOM(myjQueryObjects, counter) {

  if (myjQueryObjects.eq(counter + 1)[0].disabled) {

  NextDOM(myjQueryObjects, counter + 1);

  }

  else {

  myjQueryObjects.eq(counter + 1).trigger('focus');

  }

  }