我正在尝试在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还没有渲染.