event.keyCode在ajax加载后没有给出up和down键的键码

时间:2014-10-29 07:10:34

标签: javascript jquery ajax keycode

我有一个自动填写文本字段的ajax请求。结果附加到div。现在我需要做的是通过向上和向下箭头浏览结果。但是我没有从keydown jquery函数获取上下键码。感谢任何帮助。我使用的代码是

    $(document).ready(function() {

   $('body').on('keydown','#searchid',function(e) {
      console.log(e.keyCode);
      alert(e.keyCode);
      if (e.keyCode == 40) {        
         $('#autoCompleteResult > .auto_container table').next().focus();
         return false;
      } else if (e.keyCode == 38) {        
         $('#autoCompleteResult > .auto_container table').prev().focus();
         return false;
      }else{
         s = $(".searchBoxContent").val();
         setTimeout(function() { 
            if($('#searchid').val() == s){ 
               $.ajax({
                  type: "POST",
                  url: "/ajax_search_autocomplete.php",
                  data: 'search=' + s,
                  cache: false,
                  success: function(data) {
                     if(data){
                        //jQuery("#autoCompleteResult").html(data).show();     
                        jQuery("#autoCompleteResult").html(data).fadeIn();  
                        //Js_Keyboard_Selection();

                        $('#searchid').blur();
                        $('.auto_container table:first').focus();
                        //clearTimeout(typingTimer);
                     }else{
                        jQuery("#autoCompleteResult").fadeOut(); 
                     }
                  }
               })
             }
        }, 1000);
     }
   });
});  

1 个答案:

答案 0 :(得分:1)

有些浏览器不使用keyCode,而是which

试试这个:

var pressedKey = e.keyCode || e.which;