我在选中复选框时遇到问题,以便在检查时重新呈现模态对话框。
我正在尝试显示(或启用,我已经尝试过)某些输入字段,具体取决于所选的某些复选框。
HTML代码如下(禁用和完全删除选项)
<div class="form-group">
<label for="joinTradeCat" class="col-sm-2 control-label">Trade Category</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="joinTradeCat" placeholder = "Required" {{#unless joinTradie}} disabled="disabled" {{/unless}}>
</div> {{#if joinStudent}}
<div class="form-group">
<label for="joinCourse" class="col-sm-2 control-label">Course</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="joinCourse" placeholder = "Required">
</div>
</div>
{{/if}}
</div>
模板功能如下
Template.joinLayoutInner.events({
'click #joinTradieCheck': function(e) {
//e.preventDefault();
console.log("checkbox clicked");
var checked = joinTradieCheck.checked?true:false;
Session.set("joinTradieTag", checked);
}
});
Template.joinLayoutInner.helper({
joinTradie: function() {
return Session.get("joinTradieTag");
}
});
当我切换joinTradieCheck复选框时,会话变量会愉快地更改,但布局不会更改(要么启用编辑,要么显示#if中的那个)。
我是以正确的方式来做这件事的吗?是因为我是一个模态男孩的div?
答案 0 :(得分:1)
有一个非常小的错字,缺少s
。
Template.joinLayoutInner.helper
应该是
Template.joinLayoutInner.helpers
可以在此处找到文档:http://docs.meteor.com/#template_helpers