Iam有一个使用bootstrap组件的表,每行可单击 我也在表格行中使用把手
<tbody data-link="row" class="rowlink">
{{#each model.pastreqlist}}
{{#if_eq {{status}} "PENDING"}}
<tr data-toggle="modal" data-target="#pastreq {{action "selectRow" this target="view"}}">
{{else}}
<tr>
{{/if_eq}}
<td>{{employee_name}}</td>
<td>{{type_id}}</td>
<td>{{from_date}}</td>
</tr>
{{/each}}
</tbody>
我想启用内部的内容,即我想只为那些状态为&#34; PENDING&#34;
的行弹出模态到目前为止,我已经尝试了这个,但它无法正常工作
这里也是我的帮助代码
Handlebars.registerHelper('if_eq', function(a, b, opts) {
if(a == b)
return opts.fn(this);
else
return opts.inverse(this);
});
这是我的控制器代码
App.LinksController = Ember.ObjectController.extend({
actions: {
myleavesinfolist: function () {
rdata = $.ajax({
type: "POST",
url: "/myleaves",
dataType: "json",
async: false
}).responseJSON;
this.transitionToRoute("myleaves", rdata);
} //myleavesinfolist
} //actions
}); //controller
请帮助我成为车把和余烬的新手
答案 0 :(得分:1)
我在我的脚本中使用了把手registerhelper,如下所示
Ember.Handlebars.registerHelper('ifeq', function(a, b, options) {
return Ember.Handlebars.bind.call(options.contexts[0], a, options, true, function(result) {
return result === b;
});
});
在我的模板中,我这样做了
{{#each model.pastreqlist}}
{{#ifeq status "PENDING"}}
<tr data-toggle="modal" data-target="#pastrequestsmodal" {{action "selectRow" this target="view"}} style="cursor: pointer">
{{else}}
<tr>
{{/ifeq}}
答案 1 :(得分:0)
您应该在模型上设置计算机属性,如下所示:
App.Request = Ember.Model.extend({
stats:DS.attr('string'),
isPending:function(){
if(this.get('status') === 'PENDING'){
return true;
}
}.property('status')
});
然后在你的模板中,你可以这样做:
<tbody data-link="row" class="rowlink">
{{#each model.pastreqlist}}
{{#if isPending}}
<tr data-toggle="modal" data-target="#pastreq" {{action "selectRow" this target="view"}}>
{{else}}
<tr>
{{/if}}
<td>{{employee_name}}</td>
<td>{{type_id}}</td>
<td>{{from_date}}</td>
</tr>
{{/each}}
</tbody>