zoukankan      html  css  js  c++  java
  • Ace Admin 学习笔记

    1. jqGrid  提交编辑数据,控制台报:Synchronous XMLHttpRequest on the main thread...

      jqGrid的选项设置async: true选项:

    ajaxRowOptions: { async: true }

     2. 重置 jqGrid 表格:

    $("#grid-table").jqGrid('clearGridData');
    $("#grid-table").jqGrid('setGridParam', { // 重新加载数据
         datatype : 'local',
         data : JSON.parse(data)//  newdata 是符合格式要求的需要重新加载的数据 
    }).trigger("reloadGrid");

     3.搜索 jqGrid 表格:

    <input type="text" id="search" placeholder="搜索...">
    $('body').on('propertychange keyup','#search',function(){
                var condition = $('#search').val();
                var json = search(tdata ,condition);
                console.log(json);
                console.log(JSON.stringify(json));
                $("#grid-table").jqGrid('clearGridData');
                $("#grid-table").jqGrid('setGridParam', { // 重新加载数据
                    datatype : 'local',
                    data : json
                //  newdata 是符合格式要求的需要重新加载的数据 
                }).trigger("reloadGrid");
            })
            function search(source ,condition){
                var json=[];
                var index = 0;
                if(source == '' || condition == ''){
                    return source;
                }
                try{
                    //var data = JSON.parse(source);
                    $.each(source, function(key,val) {
                        $.each(val, function(k,v) {
                            v += ''; ////防止数字
          if(v && v.indexOf(condition) > -1){
                                json[index] =source[key];
                                index++;
                                return false; //break; return true-->continue
                            }
                        });
                    });
                }catch(e){
                    console.error(e);
                }
                return json;
            }

     4.

    下面可以获取选择一行的id,如果你选择多行,那下面的id是最后选择的行的id:

    var id=$(‘#gridTable’).jqGrid(‘getGridParam’,'selrow’);

    如果想要获取选择多行的id,那这些id便封装成一个id数组,那可以使用以下:

    var ids=$(‘#gridTable’).jqGrid(‘getGridParam’,'selarrrow’);

    如果想获取选择的行的数据,只要传入rowId即可,如下:

    var rowData = $(“#gridTable”).jqGrid(‘getRowData’,rowId);

    如果是通过data或者datastr配置的本地数据,获取所有数据:

    $('#gridid').jqGrid('getGridParam','data')   |  $('#gridid').jqGrid('getGridParam','datastr')

    5.jqgrid 行内操作时,发送的数据 (编辑时:editData):

    name: 'myac',
    formatter: 'actions',
    formatoptions: {
         keys: true,
         delOptions: {
               url:"${base}/permission/role/delete/permission",
               recreateForm: true,
               delData: {  
                          hehe: function () {return 12; }    
                        }
        },
        editbutton: false,
        delbutton: true,//disable delete button
    }

    发送的数据截图:

          

    6. jqgrid 格式化 单元格数据:

    {
        name: 'partId',
        index: 'partId',
         60,
        editable: true,
        sorttype: 'number',
        formatter : partIdFormat, ///格式化函数
        unformat : partIdUnFormat, ///编辑时的值
    }
    function partIdFormat(cellvalue, options, cell){
        var  partName = cellvalue;
        try{
            var json = ${partText};
            $.each(json , function(i ,val){
                if(val.partId == cellvalue){
                    partName = val.partName;
                    return false;
                }
            });
        }catch (e) {
            console.error(e);
        }
        return partName;
    }

     7. jgrid 单元格自动换行:

    <style>
    .ui-jqgrid tr.jqgrow td {
    white-space: normal !important;
    height:auto;
    }
    </style>

    过长用省略号表示:

    <style>
    .ui-jqgrid tr.jqgrow td {
    text-overflow : ellipsis;
    }
    </style>
     
  • 相关阅读:
    23种设计模式(12):策略模式
    23种设计模式(11):责任链模式
    23种设计模式(10):命令模式
    23种设计模式(9):访问者模式
    23种设计模式(8):观察者模式
    23种设计模式(7):中介者模式
    23种设计模式(6):模版方法模式
    创建型模式总结
    23种设计模式(5):原型模式
    leetcode6
  • 原文地址:https://www.cnblogs.com/qingyibusi/p/6655915.html
Copyright © 2011-2022 走看看