Javascript 未捕获类型错误:初始化Materialize autocomplete时this.dropdownEl为空
我使用MaterializeV1及其自动完成。我以前用过。我重新使用了代码,但是我得到了Javascript 未捕获类型错误:初始化Materialize autocomplete时this.dropdownEl为空,javascript,materialize,Javascript,Materialize,我使用MaterializeV1及其自动完成。我以前用过。我重新使用了代码,但是我得到了未捕获的TypeError:this.dropdownEl为null,我在网上没有找到任何关于此错误的有用信息。我试图简化初始化和调试,但没有任何效果 嗯,Chrome抛出此错误uncaughttypeerror:无法将属性“tabIndex”设置为null Uncaught TypeError: this.dropdownEl is null value https://cdnjs.cloudflare.c
未捕获的TypeError:this.dropdownEl为null
,我在网上没有找到任何关于此错误的有用信息。我试图简化初始化和调试,但没有任何效果
嗯,Chrome抛出此错误uncaughttypeerror:无法将属性“tabIndex”设置为null
Uncaught TypeError: this.dropdownEl is null
value https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
n https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
value https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
value https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
value https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
s https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
value https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
value https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js:6
setAutocomplete https://n-mh3s4ggu24p7gzei6l4cpyqn5d5354dk4egvm7y-0lu-script.googleusercontent.com/userCodeAppPanel:159
cf https://n-mh3s4ggu24p7gzei6l4cpyqn5d5354dk4egvm7y-0lu-script.googleusercontent.com/static/macros/client/js/3342396747-mae_html_user_bin_i18n_mae_html_user__cs.js:73
我调用返回自动完成数据的Google应用程序脚本
document.addEventListener("DOMContentLoaded", function(){
google.script.run.withSuccessHandler(setAutocomplete)
.getAutocompleteData();
});
然后我设置了自动完成
function setAutocomplete(vraceno){
console.log(vraceno);
var elems = document.querySelectorAll('.autocomplete');
console.log(elems.length)
console.log(elems[0].id)
var data = {
"Apple": null,
"Microsoft": null,
"Google": "https://placehold.it/250x250"
}
var options = {
//data : vraceno.autocomplete,
data : data,
limit : 2,
// onAutocomplete : function(txt) {
// onAutocomplete(txt);
// },
};
console.log("before");
var instanceAutocomplete = M.Autocomplete.init(elems, options);
console.log("after");
console.log(instanceAutocomplete)
//autocomplete = vraceno;
}
从控制台截图中我们可以看到
- 数据已收到(这并不重要,因为我使用测试数据变量来测试收到的数据)
- 找到一个“自动完成”元素
- var instanceAutocomplete=M.Autocomplete.init(元素,选项)代码>是问题所在
<div class="col s12 m6 l3">
<label for="autocomplete">vyhledávání podle jména, příjmení, id</label>
<input placeholder="" id="auto" name="autocomplete" type="text" class="autocomplete" autocomplete="off" />
</div>
vyhledávánípodle jména,příjmení,同上
有人可以帮助我使Materialize autocomplete正常工作吗?出现问题的原因是输入字段没有包装在带有类输入字段的div中: vyhledávánípodle jména,příjmení,同上 添加一个带有“类”输入字段的div解决了这个问题