0
我想用option
元素填充select
元素,使用流星TemplateHelpers和Handlebars。用流星TemplateHelper函数和把手渲染HTML“晚”
模板
<template name="newTransaction">
...
<select name="productNameSelect">
{{{ getProductOptions }}}
</select>
...
</template>
助手
Template.newTransaction.getProductOptions = function() {
//Get all products for drop-down
var count = 0;
var optionsHTML = "";
var options = ProductCollection.find({});
options.forEach(function(product)
{
var newOption = "<option value='" + product.productID + "' >" + product.name + "</option>";
optionsHTML += newOption;
++count;
if(count == options.count())
{
console.log("Products returned for client:" + optionsHTML)
return optionsHTML;
}
});
};
在浏览器JavaScript控制台正确的控制台日志文本打印,但在我的选择列表中没有的选项被添加到DOM。
我所有的其他小帮手功能都能正常工作,虽然它们更简单,可能不会花费太多时间。我如何正确渲染选项元素?
哇,真棒做到这一点。这两种方法的工作,我真的很喜欢后者!我原来的代码考虑了本地node.js循环中使用的异步调用,似乎Meteor不需要它?谢谢一堆。 – supertopi