自动完成箭头键不起作用

时间:2016-05-12 03:10:56

标签: javascript jquery jquery-ui jquery-ui-autocomplete

我使用自动完成功能从数据库中检索数据

$('input[name=\'product_name\']').autocomplete({

  'source': function(request, response) {

    $.ajax({
      url: 'index.php?route=checkout/cart/autocomplete&name=' +  encodeURIComponent(request), //Controller route
      dataType: 'json',
      success: function(json) {
        response($.map(json, function(item) {
          return {
            label: item['name'],
            value: item['product_id']
          }
        }));
      }
    });
  },

  'select': function(item) {

    $('input[name=\'product_id\']').val(item['value']);
    $('input[name=\'product_name\']').val(item['label']);
  },

    focus: function(event, ui) {
          return false;
    }
});

我已经将焦点返回false,但我的下拉箭头键仍然无效。 我也尝试过使用event.preventDefault();

1 个答案:

答案 0 :(得分:-1)

select的{​​{1}}事件处理程序存在一些问题。所以试试这个脚本 -

jquery-ui-autocomplete
  

$('input[name=\'product_name\']').autocomplete({ source: function(request, response) { $.ajax({ url: 'index.php?route=checkout/cart/autocomplete&name=' + encodeURIComponent(request), //Controller route dataType: 'json', success: function(json) { response($.map(json, function(item) { return { label: item['name'], value: item['product_id'] } })); } }); }, select: function(event , ui) { $('input[name=\'product_id\']').val(ui.item.value); $('input[name=\'product_name\']').val(ui.item.lable); }, focus: function(event, ui) { return false; } }); 事件选择指定的回调:

     

$(" .selector")。autocomplete({select:function(event,ui){}});

希望这能解决您的问题。