案例效果

自定义的按钮,过滤功能列表数据

实现思路

  1. 给功能列表添加按钮
  2. 注册按钮点击前事件,根据过滤条件重新请求数据,在返回给列表,重新渲染数据

操作步骤

1. 给功能列表添加按钮

2. 注册按钮点击前事件,根据过滤条件重新请求数据,在返回给列表,重新渲染数据

相关代码

/**
    列表和表单共用,所声明的方法为全局方法,可以直接通过 方法名 或者 window.方法名 来调用
    事件注册:APP.listeners = {按钮编码:{},字段编码:{},list:{},form:{}};以下是事件名:
        按钮:beforeclick,click
        字段:reset(全部),beforequery,query(单选,多选,查询选择,树形选择,日期),beforeclick,afteredit(子功能)
        列表:itemclick,load,renderer
        表单:submit,activate,beforeactivate(参数是model,可以修改model值)
*/
APP.listeners = {
    test:{
        beforeclick:function(btnCtrl,data){
            var flag = false;
            var data = [];//申明空数组
            //根据拼的条件重新ajax请求数据
            JE.ajax({
                url:'/je/load',
                params:{
                        tableCode:'TM_WORK',
                        j_query:JE.encode([{code:'WORK_PRODUCT_NAME',value:'自助类',type:'=',cn:'and'}])
                    }
            }).then(function(info){
                if(info.success){
                    //因为APP中data数据只存ID数据,所以得先遍历返回的数据,将ID数据push到新申明的空数组
                    for(i = 0;i<info.rows.length;i++){
                        data.push(info.rows[i].TM_WORK_ID)
                    }
                    //将新数组的数据赋值给原来的data
                    btnCtrl.getThisList().data = data;
                    flag = true;
                }else{
                    JE.alert('数据刷新失败');
                } 
            });
            if(!flag) return false;
        }
    }
};
最后编辑: 呼丽华  文档更新时间: 2024-08-21 10:58   作者:呼丽华