自动完成不适用于值数组

Posted

技术标签:

【中文标题】自动完成不适用于值数组【英文标题】:Autocomplete not working with array of values 【发布时间】:2019-08-10 05:10:21 【问题描述】:

我已阅读所有与 jQuery 3.3.1 和 jQuery-UI 1.12.1 相关的帖子,但我无法找到解决方案。这是我的代码,它不起作用。

<link href="lib/jquery-ui/themes/base/jquery-ui.css" rel="stylesheet" />
<link href="lib/bootstrap/dist/css/bootstrap.css" rel="stylesheet" />

<div class="ui-widget">
  <span>Enter Language Name: </span><input id="Language">
</div>
<script src="lib/jquery/dist/jquery.js"></script>
<script src="lib/jquery-ui/jquery-ui.js"></script>
<script src="lib/bootstrap/dist/js/bootstrap.js"></script>
<script>
  var tech = [
    "Asp",
    "Basic",
    "Java",
    "php",
    "Typescript",
    "Ruby",
    "Python",
    "Angular"
  ];
  $('#Language').autocomplete(
    data: tech
  );
</script>

【问题讨论】:

【参考方案1】:

autocomplete() 设置中没有 data 属性。如果您提供要在控件中使用的值数组,则需要使用source。我建议阅读documentation。

var tech = [
  "Asp",
  "Basic",
  "Java",
  "Php",
  "Typescript",
  "Ruby",
  "Python",
  "Angular"
];
$('#Language').autocomplete(
  source: tech
);
<link href="https://code.jquery.com/ui/1.12.0/themes/smoothness/jquery-ui.css" rel="stylesheet" />
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" />

<div class="ui-widget">
  <span>Enter Language Name: </span><input id="Language">
</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

【讨论】:

以上是关于自动完成不适用于值数组的主要内容,如果未能解决你的问题,请参考以下文章

Jquery UI自动完成重音映射不适用于斯拉夫字符

从数组中自动完成并获取对应的id

jquery自动完成不适用于JSON数据

为啥 PyCharm 的自动完成功能不适用于我安装的库?

jQuery .val() 不适用于 jQueryUI 自动完成功能

inputProps= readOnly: true 不适用于 Material UI 自动完成