zoukankan      html  css  js  c++  java
  • MINIUI grid学习笔记

    grid 控件
    a.事件的绑定和移除
             grid.on("rowclick", fn); //绑定事件 (这个的话类似jquery的绑定事件)
             grid.un("rowclick", fn); //接触绑定 (这个是在百度上查找的)
             注:解除事件绑定,必须要传递一个处理函数所以绑定的时候不要是匿名函数
    b.绑定事件和移除事件都需要消耗一定的性能的
            单元格的绘制顺序
            left ------>right
            top------>down

    c.事件的常见触发先后顺序
           onDrawCell--->onCellBeginEdit----->onDrawsummarycell----->onCellCommitEdit
    注意:
           setTimeout(function(){grid.on("drawsummarycell",onDrawsummarycell);},1000);
           如果这种情况的话那么该事件就失效了、因为在绘制单元格的时候不能被中断
    针对onDrawsummarycell汇总事件:
           在实现动态列的展示和隐藏的时候发现每一次动态改变的话、
           就会在汇总的事件中执行一次,所以最好是不要进行列的动态设置;性能开销很大;
           针对汇总事件因为会涉及到获取整个表格之中的数据所以、必须得所有的单元格渲染完成
           才能够进行相应的计算;
          grid.Drawsummarycell 汇总展示的话、只要编辑任何一个单元格就会触发单元格的重新绘 制所有单元格都会重新计算;

          关于grid.getData() 这个方法是获取编辑之后的数据的整体数据;
          例如:$J.get("processdata").setValue($J.encode(grid.getData()));

    d.指定更新行

         目前暂时只找到用updateRow的方式更新指定的单元格信息、

         还没有找到单独能够获取单元格的方法;这部分有待完善的

         对于 grid.updateRow(row,{field:value}) 中的field 不能使用字符串的直接拼接

     

         例如:grid.updateRow(row,{"process_"+j:value});//这个是不通过的

                    grid.updateRow(row,{"process_j":value}); //这样是可以的

                    var p ="process_"+j;

                    grid.updateRow(row,{p:value});//这样也是通不过的

         猜想:可能存在js 解析执行顺序有关、或者是和js的拼接方式也有关

                   下面就进行了格式的转换

                    var c ={};

                    c["process_"+j]=value;

                    grid.updateRow(row,c);//就可以了

        结论:

                    1、对象.属性=value;//是能为对象的属性赋值

                    2、对象["属性"]=value; //单单就是一个值的概念

                    3、e.sender.text=text ;//是能为对象的属性赋值 但是在input 控件中不能展示

                    4、e.sender.getText(text);//这个是在input 中控件展示的;

                    5、$J.get("xxx").getValue() 和$J.get("xxx").value 的差异在于前一个是真实的值,后一个是处理后的值

                    6、<div field="process_46" name="process_46" headerAlign=‘center“ ></div>  该field="field_" 不能以field 开头是特殊字符

  • 相关阅读:
    PHP+Ajax手机移动端发红包实例
    PHP+Ajax点击加载更多列表数据实例
    Thinkphp带表情的评论回复实例
    PHP+Mysql查询上一篇和下一篇文章实例
    PHP通过session判断防止表单重复提交实例
    PHP+Ajax微信手机端九宫格抽奖实例
    PHP+Ajax+plupload无刷新上传头像代码
    PHP原生开发的各大音乐平台API接口
    js 获取浏览器高度和宽度值(多浏览器)(转)
    NPOI、MyXls、Aspose.Cells 导入导出Excel(转)
  • 原文地址:https://www.cnblogs.com/tzhyy/p/9661208.html
Copyright © 2011-2022 走看看