WB8使用说明-grid增删改查-字典(三)
使用字典的增删改查方式是,WB8的新特性,操作更加简单,(以下方法不需要创建window,之需指定维护表对应的字典)
新建操作
Wb.insert(app.grid1, {
url: 'm?xwl=examples/crud/crud-db-access/insert'
//title: '添加',
//iconCls: 'record_add_icon',
//windowName: 'sys.example.crud.dictDialogEdit', //可选单例模式,关闭时隐藏
//destroyOn: app.viewport1, //在viewport1销毁时销毁该窗口
//resetScrollbar: true,
//把上述3行代码注释取消,对话框将只在首次创建,后续使用hide/show。不建议过多使用单例模式,因为未销毁窗口将占用系统资源。
//params: {} //可选参数
});
注意,设置config的win属性,可以直接实例化win控件
修改操作
Wb.edit(app.grid1, {
url: 'm?xwl=examples/crud/crud-db-access/update',
titleField: 'STRING_FIELD'
// focusControl: null, //不设置焦点,方便还原上次滚动条状态
// windowName: 'sys.example.crud.dictDialogEdit', //单例模式,关闭时隐藏
// destroyOn: app.viewport1 //在viewport1销毁时销毁该窗口
});
删除操作
Wb.del(app.grid1, {
url: 'm?xwl=examples/crud/crud-db-access/delete',
titleField: 'STRING_FIELD'
});
使用上述方案,删除操作不需要写sql语句,配置updater即可
相关知识学习:
删除表格中选择的记录。首先提示确定是否删除,然后向后台发请删除数据请求,最后在请求返回后删除表格中的数据。
Parameters
- object : Ext.grid.Panel/Ext.data.Store
表格或store对象。
configs : Object (optional)
配置参数。
- url : String (optional)
- 后台url地址。
- params : Object (optional)
- 参数对象。
- failure : Function (optional)
- 调用失败后触发的事件。
- titleField : Function [configs.success] 调用成功后触发的事件。传递参数grid。 @param {String (optional)用户提示信息的标题字段名称。
通过弹出对话框的方式向表格中添加记录。详细说明见Wb.edit。
Parameters
- object : Object
- configs : Object
通过弹出对话框的方式向表格中添加/修改记录。首先系统将打开对话框,然后调用Ajax请求向后台发起添加/修改数据请求, 最后在请求返回后把数据同步到表格中。当后台返回的数据为JSON Object格式的数据时,系统自动应用这些数据,并同步到记录中, 如果后台返回的数据不是JSON Object,则不应用这些数据。
Parameters
- object : Ext.grid.Panel/Ext.data.Store
需要编辑的表格或store对象。
- configs : Object
配置参数。
- url : String
指向后台添加/修改模块的url地址。当窗口点击确定时系统会自动提交所有参数到该url。
- params : Object (optional)
参数对象。该参数在应用窗口控件值和提交参数到后台时将覆盖同名的窗口控件值和记录字段值。 优先级从低到高依次为记录字段值、窗口控件值和配置参数。
- title : String (optional)
对话框标题。
- titleField : String (optional)
修改的记录该字段值作为窗口子标题。仅用于修改模式。
- iconCls : String (optional)
对话框图标。
- win : Object/Ext.window.Window (optional)
窗口模板对象或实例。如果窗口中包含文件上传控件, 必须在窗口内添加itemId为form的formPanel控件。在使用Wb.edit方法后将设置该窗口的editHandler属性为默认处理方法, 并设置窗口isNew属性,用以标识是否为添加或修改操作。如果窗口为实例默认使用单例模式,自动设置closeAction为hide, 并在表格销毁时自动销毁该窗口;如果窗口为非实例,将每次自动创建新的窗口实例,并在关闭后销毁窗口。
- firstItems : Object[] (optional)
额外添加的前置控件列表。
- lastItems : Object[] (optional)
额外添加的后置控件列表,
- autoFocus : Object[] (optional)
如果后台异常,是否根据返回错误信息自动设置控件焦点。默认为true。
- beforerequest : Function (optional)
在点击确定按钮发起后台请求前触发的事件。this指向窗口的appScope。如果返回false将取消请求。
Parameters
- values : Object (optional)
窗口所有值组成的对象。
- win : Ext.window.Window (optional)
窗口对象。
- values : Object (optional)
- success : Function (optional)
在请求成功完成之后触发的事件。this指向窗口的appScope。如果返回false将取消默认处理方法。请求失败 事件请参考failure。
Parameters
- values : Object (optional)
窗口所有值组成的对象。
- win : Ext.window.Window (optional)
窗口对象。
- responseText : String (optional)
后台返回的字符串。
- values : Object (optional)
- failure : Function (optional)
请求失败后触发的事件。this指向窗口的appScope。
Parameters
- values : Object (optional)
窗口所有值组成的对象。
- win : Ext.window.Window (optional)
窗口对象。
- responseText : String (optional)
后台返回的字符串。
- values : Object (optional)
- others : Mixed...
更多参数请参考Wb.prompt方法和Ext.window.Window对象。
- url : String
- isNew : Boolean (optional)
是否为添加操作,默认为false即修改操作。
Returns
- Ext.window.Window
编辑的对话框对象。如果为通过url加载窗口返回undefined。