使用Backbone.js中的Auto-Suggest Lookup对表单进行建模

时间:2012-02-28 22:53:04

标签: ajax backbone.js

我在顶部有一个小表单的报表UI,用户使用Auto-Suggest文本框按名称查找某个人,并在我们选择一个时设置一个隐藏的ID字段。然后,他们输入开始和结束日期,然后点击提交以加载下面的报告。报告数据使用Person的ID获取,日期范围作为Backbone路由获取。我也可以在报告标题中显示此人的姓名,因为我从自动建议查找中获得了该名称。

问题是,如果有人为报告添加书签(这是一个不错的功能),我想重新填充表单(显示人名)和报告标题。

所以,目前我有一条路线('id / startdate / to / enddate')有时会被已填充的表格模型触发,有时会被书签/刷新触发,需要从路线重新填充表格模型数据和服务器端数据。

你会如何塑造这个?我打算将一个模型绑定到表单:

{ id: 234, name: 'Bill', startDate: '1/1/2011', endDate: '1/1/2012' }

但是我正在努力解决这个问题,有时需要获取名称并填充表单,有时候已经有了填充的表单(和名称)。感觉就像我的Backbone视图/模型/路线应该有更好的设计。

1 个答案:

答案 0 :(得分:0)

您可以通过触发模型将侦听的名称,startDate等参数的消息,从路由器填充模型。

在可以在模型上设置数据的视图中可以完成同样的操作。因此,无论您从何处获取信息(查看,路由器),您的模型都将正确保持状态。

然后,您的表单视图可以监听其模型的更改,使用预先填写的模型更改信息重新呈现。

希望它有所帮助。