0

我想在一定数量的字符后阻止 jquery 自动完成。

目的是,我有一个订单号列表,其中最后有一个后缀,并且总是已知的。每个订单号 是 12 位数字,其中 3 位数字作为已知后缀。我想在 5 个字符后开始自动完成并且我使用 实现了minLength: 5,但我无法将最大数字指定为 8。

由于最后 3 位数字总是已知的,我希望它只搜索前 8 位数字,就好像您知道前 9 位数字然后您知道完整的订单号一样。已经。

我试过使用maxLength:8,但它不起作用。即使在 8 位或更多位之后,自动完成也会触发。

请帮忙。非常感谢提前!!

4

1 回答 1

2

source选项设置为函数:

$('#myInput').autocomplete({
    ...
    source: function(pattern, response){
      if (pattern.length > 8) {
        //don't do anything
        return;
      }

      //else : fetch your data, and call the 'response' callback
      $.ajax({
          url: 'my/autcomplete/url',
          dataType: 'json',
          data: {"pattern": pattern}
          success: function(data){
              // build a string array form your data,
              // or an array of {label, value} objects (see the doc)
              response(data);
          }
      });
    }

请参阅文档

于 2013-10-23T07:19:38.660 回答