使用JQuery UI错误实现CSS自动完成Uncaught TypeError:this.source不是函数

时间:2017-03-25 15:10:26

标签: jquery css jquery-ui jquery-ui-autocomplete materialize

我正在使用Materialise CSS库,其中有一个选项可以autocomplete dropdown(您可以在页面末尾找到它)

如果我尝试使用它,当我输入内容时会显示此错误

  

未捕获的TypeError:this.source不是函数
      at t。(匿名函数)。(匿名函数)._ search(http://localhost/imgup/js/jquery-ui.min.js:2345:101
      at t。(匿名函数)。(匿名函数)._ search(http://localhost/imgup/js/jquery-ui.min.js:139:77
      at t。(匿名函数)。(匿名函数).search(http://localhost/imgup/js/jquery-ui.min.js:2341:175
      at t。(匿名函数)。(匿名函数).search(http://localhost/imgup/js/jquery-ui.min.js:139:77
      at t。(匿名函数)。(匿名函数)。 (http://localhost/imgup/js/jquery-ui.min.js:2337:74
      在我(http://localhost/imgup/js/jquery-ui.min.js:302:62

我搜索了这个问题,但我没有找到任何有用的答案

这是我的Materialise CSS - HTML代码

<input type="text" id="autocomplete-input" class="autocomplete">

这是javascript for autocomplete

$('input.autocomplete').autocomplete({
data: {
"Apple": null,
"Microsoft": null,
"Google": 'http://placehold.it/250x250'
},
limit: 20, // The max amount of results that can be shown at once. Default: Infinity.
onAutocomplete: function(val) {
// Callback function when value is autcompleted.
},
minLength: 1, // The minimum length of the input for the autocomplete to start. Default: 1.
});

并且有一些屏幕截图,我在哪里收到错误,如下面的错误日志

控制台出错: Error in console

正在发生的文件出错 - 1: Error in file that is occurring - 1

正在发生的文件出错 - 2: Error in file that is occurring - 2

正在发生的文件出错 - 3: Error in file that is occurring - 3

正在发生的文件出错 - 4: Error in file that is occurring - 4

正在发生的文件出错 - 5: Error in file that is occurring - 5

我该如何解决这个问题?请帮帮我

2 个答案:

答案 0 :(得分:0)

您使用的是哪个版本的jQuery / Materialize?看看这支笔在哪里工作:

http://codepen.io/anon/pen/RpBRjJ

您是否将jQuery代码包装在$(document).ready()

之类的内容中

答案 1 :(得分:0)

如果您正在加载jquery-ui,则错误

  

this.source不是函数”

也会发生。

在这种情况下,您不能使用jquery $('input.autocomplete').autocomplete(),但需要使用M.Autocomplete替代调用。