我正在使用aldeed表格表来显示记录。我已经提交了状态。我想根据下拉选择过滤记录。
有没有办法做到这一点?
答案 0 :(得分:1)
对模板中的表格组件使用selector
参数,仅过滤客户端值。
类似的东西:
<template name="invoiceList">
<div>
{{> tabular table=TabularTables.Invoices selector=statusSelector class="table table-bordered table-striped table-hover"}}
</div>
</template>
statusSelector
是一个模板助手,应该返回一个Mongo风格的选择器。该选择器可以从会话变量构造。将会话变量设置为下拉选定值
并获取模板助手中的值。
例如:
Template.invoiceList.events( {
'change #statusdropdown': function(evt) {
var currentTarget = evt.currentTarget;
var statusValue = currentTarget.options[currentTarget.selectedIndex].value;
Session.set('selectedstatus', statusValue);
}
});
Template.invoiceList.helpers({
statusSelector: function () {
var selector = {};
var selectedStatus = Session.get('selectedstatus');
if (selectedStatus)
selector = {status: selectedStatus}; // This is the selector/filter that is going to be applied to the collection.
return selector;
}
});
此处也有解释:https://github.com/aldeed/meteor-tabular#displaying-only-part-of-a-collections-data-set