0

我有一个包含日历的主干.js 模型。用户可以在日历中来回切换,我可以获取所选日历日的事件。

在我的模型中,我有

初始化:函数(){
    this.on('change:date',this.get_cal());
},
get_cal:函数(){
    alert('获取日历');
    这个.fetch(...
}

在我看来我有

cal_date:函数(移动){
    Myapp.cal.attributes.date.setDate(Myapp.cal.attributes.date.getDate()+move);

}

当日期更改时,我希望主干触发更改事件,并获取新日期的日历事件。不幸的是,这并没有发生。

我也尝试将打印的日期放入模型中

Myapp.cal.set({print_date: formatted_date});

认为骨干可能缺少更新,因为我没有调用“设置”,或者因为它看到一个日期对象并认为它已经有一个日期对象,因此没有改变。

我也尝试Myapp.cal.trigger('change')在视图中使用 , 触发更改,但这也不起作用。也没有通过调用Myapp.cal.cal_events.refresh()where cal_events 是保存日期事件的集合来删除日历事件。

你知道这里有什么问题吗?

4

1 回答 1

3

我认为问题在于这一行的get_call之后的括号:

this.on('change:date',this.get_cal());

您应该删除它们,因为它们在初始化时调用get_call而不是使它们成为事件处理程序。

于 2012-11-02T00:45:50.660 回答