编程语言
首页 > 编程语言> > javascript – 使用Materialise和Meteor时,我应该在哪里初始化select?

javascript – 使用Materialise和Meteor时,我应该在哪里初始化select?

作者:互联网

我正在尝试在Meteor上使用Materialise Forms.在Materialise的页面上,它说我应该初始化“select”输入字段,如下所示:

$(document).ready(function() {
  $('select').material_select();
});

我试过在Meteor.startup,Template.body.created上调用它 – 没有任何效果.我收到以下错误:

undefined is not a function (evaluating ‘$(‘select’).material_select()’)

我应该在哪里初始化它?

解决方法:

使用模板的.rendered callback

<template name="hello">
    <select><option>...</option></select>
</template>

然后你可以在你的js文件中有这个

Template.hello.onRendered(function() {
    $('select').material_select();
});

在渲染已经触发后,模板很可能被添加到主体中,这就是为什么渲染的主体不起作用.如果你使用.created,DOM还没有渲染.

标签:materialize,javascript,jquery,meteor
来源: https://codeday.me/bug/20190824/1711416.html