我正在使用extjs4.0设计一个高度复杂的数据输入表单。我正在将一个模型绑定到我的表单。
在我的模型中,我有一个属性,叫做"Products“,表示Product模型。现在我想在我的表单面板上的网格中显示这些产品。用户可以添加、删除网格中的产品并保存表单。
实现这一目标的最佳方法是什么?
发布于 2012-02-19 08:18:00
如果我没理解错的话,你有一个1对多的对象关联,其中1个边被加载到表单中进行编辑,许多对象也需要显示,但在表单内的网格中。
我处理类似设计的方法是在表单下面添加一个网格面板。在我的例子中,还有其他组件,所以我的网格被包装在一个选项卡面板中。与此example类似,请参阅表单5。
现在,网格中包含了什么?好吧,我添加了一个商店来表示我的许多对象--或者你的例子中的产品。我为该商店设置了一个编写器代理,并在网格中添加了一个roweditor插件。最终的结果是,用户可以通过一个屏幕轻松地管理关系,编辑父对象和子对象的属性。我选择了一个自动同步存储来存储许多存储,但你不必这样做。您可以很容易地向网格添加一个保存按钮,或者只是将操作绑定到父级的保存按钮。
希望这能让你的创意源源不断:)
发布于 2012-02-18 14:27:11
您可以覆盖表单的setValues()
、getValues()
方法。只需将网格绑定添加到基方法即可。注意-不需要扩展窗体来创建您自己的类。您可以在声明表单的地方覆盖这些函数。
{
xtype: 'form',
setValues: function(){}
}
希望这能帮上忙。
https://stackoverflow.com/questions/9338349
复制相似问题