DataGrid

 

    $('#table_khxjdf').datagrid({
            title:'',                 //标题        
            iconCls:'icon-tip',             //图标
            fit:true,
            method:'post',              //数据方式
            iconCls:'icon-tip',             //图标
            singleSelect: true,             //单选
            fitColumns: true,                 //自动调整各列,用了这个属性,下面各列的宽度值就只是一个比例。
            striped: true,                     //行斑马线           
            nowrap:false,                    //true 禁止换行
            pagination:true,
            pageSize:20,    
            //pageList:[1,10,20,30,40,50],        //页码选择列表
            rownumbers:true,                 //显示行号
            loadMsg:'正在加载,请稍候……',         //加载数据的时候显示提示消息
            idField:'ZBID',                     //主键字段 
            queryParams:{},                 //查询参数集合
            scrollbarSize:18,
            sortName:'ZBMC',                //默认排序字段
            sortOrder:'desc',                //默认倒序、正序
            url:"${ctx}/khyj/khxjdfGetdatabyUserID", //数据来源        jiujiayi/pkhxx    
            columns:[
                     [
                        {field:'RYKH_ID',title:'考核记录ID',halign:'center',width:120,hidden:true },
                        {field:'FJ_ID',title:'附件ID',halign:'center',width:120,hidden:true },
                        {field:'XMMC',title:'项目名称',halign:'center',width:120,sortable:false },
                        {field:'ZBMC',title:'指标名称',halign:'center',width:120,sortable:false },
                        {field:'KHZB_QZ',title:'权重',halign:'center',width:80,sortable:false,align:'right' },
                        {field:'FJ_NAME',title:'附件',halign:'center',width:200,sortable:false,
                            formatter:function(value,rowData,rowIndex){
                                if(value){
                                    var valueArr=value.split(",");
                                    var FJIDArr=rowData["FJ_ID"].split(",");
                                    var a="<a href='${ctx}/khyj/khdf/dowloadfile?FJID={FJID}' style='color:#436EEE;cursor:pointer' >{value}</a>";
                                    //var a="<a style='color:#436EEE;cursor:pointer' onclick=getFJ('{FJID}') >{value}</a>";
                                    var newValue="";
                                    for(var i=0;i<valueArr.length;i++){
                                        newValue=newValue+","+a.replace("{value}",valueArr[i]).replace("{FJID}",FJIDArr[i]);
                                    }
                                    if(newValue.charAt(0)==',')  //清除前面的 ,
                                        newValue=newValue.substr(1);
                                    return newValue;
                                }
                            }
                        },
                        {field:'RYKH_SFWC',title:'完成情况',halign:'center',width:80,sortable:false },
                        {field:'RYKH_DF',title:'分值',halign:'center',align:'center', width:100,sortable:false,align:'right',
                             editor: { type: 'numberbox', options: { required: true,min:0,max:100,value:0} }
                        }                        
                    ]                 
            ],
            toolbar: [
                    {
                        id:"edit",
                        iconCls: 'icon-edit',
                        text:"编辑",
                        handler: function(){
                            beginEdit();
                        }
                    },'-',
                    {
                        id:"cancelEdit",
                        iconCls: 'icon-cancel',
                        text:"取消编辑",
                        handler: function(){
                            cancelEdit();
                        }
                    },'-',{
                        id:"save",
                        text:'保存',
                        iconCls:'icon-save',
                        handler: saveEdit
                    },'-',{
                        id:"close",
                        text:'关闭',
                        iconCls:'icon-cancel',
                        handler: closed
                    }
            ],        
            onBeforeLoad:function(param){
                //请求前先判断是否有没有保存的
                endedit();    //先结束编辑,才能获取修改后的值
                var that=this;
                var rows=$(that).datagrid('getChanges',"updated");
                if(rows.length ){  //有部分数据没有提交的  && editState==State.editState
                    beginEdit();
                    $.messager.confirm('确认对话框', '您有 '+rows.length+' 条数据没有保存,请确认是否保存?', function(r){
                        if (r){ //保存  
                            saveEdit(); 
                        }
                        else{    //取消编辑
                            cancelEdit();
                        }
                        $(that).datagrid('acceptChanges');
                    });
                    return false;
                }
                
                //为请求增加参数
                if(USERID && YJKHID){
                    param.USERID=USERID;  //人员ID
                    param.YJKHID=YJKHID;  //考核单ID
                }
                else
                    return false
                
            },
            //清除datagrid之前的选择状态
            onLoadSuccess:function(data){
                $(this).datagrid('clearSelections');
                if($(this).datagrid('getRows').length>0){
                    $(this).datagrid('selectRow',0);//默认选中第一行
                    $(this).datagrid('autoMergeCells',['XMBH']);
                    editState=State.notEditState;
                }
                else{    //没有数据
                    editState=State.nodata;
                };   
                setToolState(editState);
                $(this).datagrid('autoMergeCells',['XMMC']);
            },
            onLoadError:function(){
                $.messager.alert("提示",'获取数据失败!','info');
            }
        });    

 

 

特别注意 onBeforeLoad事件,其参数为param,该参数为object 类型,包含传送给服务器的参数,在这里,可以修改参数值或者增加自己的参数。

 

posted @ 2016-04-12 21:42  志在天涯  阅读(367)  评论(0编辑  收藏  举报