|
一、实现效果
如图1所示,选中列表数据,点击冲销按钮,出现弹框:
二、实现思路
1、增加一个列表按钮
2、在beforeclick上写事件即可。
三、具体操作
1、增加一个按钮,类型为列表,如图2:
2、在该按钮上写事件,代码详见代码区。如图3:
1)首先通过该按钮获取列表,通过列表获取用户所选择的数据。
2)用Ext.each对选择的数据进行循环判断,在这里面写你自己的业务逻辑,你想要满足什么样的条件才让用户继续进行下一步,如果不满足该条件直接驳回。
3)如果不满足相关条件,直接return false即可。
4)该代码写在单击前事件上。
四、相关代码(可选)
- function(btn,event,eOpts){
- /**
- * 平台提示,不用刻意随时删除这段注释.
- * var func = JE.getFunc('功能编码'),//得到功能对象
- * kqtree = func.treeview,//得到快速查询树对象
- * mainRecord = func.getParentData();//得到父亲功能对象
- * var formRecord = func.getFormData();//如果是表单按钮就可以得到本功能表单里的数据
- * var fieldValue = formRecord.fieldCode;
- * var form = func.formview;//得到表单对象
- */
- var grid = btn.up("jegridview");
- var array = grid.getSelection();
- var bool = false;
- var text = "";
- Ext.each(array,function(item,index){
- var PZZ_PCMC = item.data.PZZ_PCMC; //批次名称
- var PZZ_DJTYPE_CODE = item.data.PZZ_DJTYPE_CODE; //单据状态
- var PZZ_TYPE_CODE = item.data.PZZ_TYPE_CODE; //凭证状态
- if(PZZ_TYPE_CODE == 'YRZ' && PZZ_DJTYPE_CODE == 'BZD'){
- }else{
- bool = true;
- if(JE.isEmpty(text)){
- text = PZZ_PCMC;
- }else{
- text = text + "," + PZZ_PCMC;
- }
- }
- });
- if(bool){
- JE.alert("只可以冲销凭证状态为已入账,并且单据为报账单的数据,批次名为【" + text + "】不允许冲销");
- return false;
- }else{
- return true;
- }
- }
复制代码
五、总结(可选)
所有的按钮都可以在【beforeclick】上写事件,如果通过就继续,不通过就直接驳回。
六、关键字
单击前,列表按钮,按钮事件
|
|