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