我无法找到有关在Reactive Table上使用onchange事件的任何问题或答案。
每当我按下表格中的任何一行并记录该行上的值时,我就可以使用console.log点击事件。 但是,只要其中一个字段值发生变化,我就无法记录。可能我的语法错误,我只是无法弄明白以及如何让它工作。
这是我的代码:
tables.js
Template.tables.onCreated( function() {
this.subscribe('adverts');
var currentPage = new ReactiveVar(Session.get('current-page') || 0);
this.currentPage = currentPage;
this.autorun(function () {
Session.set('current-page', currentPage.get());
console.log(currentPage)
});
});
Template.tables.helpers({
table: function() {
return Adverts.find().fetch();
},
})
Template.tables.events({
'onchange .reactive-table tbody tr': function () {
var fields = this;
Session.set('post', fields);
console.log(fields)
},
})
tables.html
<template name="tables">
<div>
{{> reactiveTable showFilter=false showNavigation='never' collection=table}}
</div>
</template>
答案 0 :(得分:1)
tr
个元素无法触发change
个事件。您正在寻找数据更改而非用户交互,因此更好的方法是使用观察者:
var cursor = Adverts.find();
var handle = cursor.observe({
changed: function(newDocument, oldDocument) {
//handle change
}
});
有关观察员的更多信息,请参阅docs。