zoukankan      html  css  js  c++  java
  • jquery EasyUI datagrid 的扩展

    接触 easyui 半年,js学的不深。大神请路过。

    直接扩展

      添加方法:

    $.extend($.fn.datagrid.methods, {
    
        getSelectedIndex: function (jq) {//jq这个参数固定,如果需要定义其它参数写到后面
    		var rowIndex = -1;
    		jq.each(function () {//只取一个,其它不管。
    			var dg = $(this);
    			var row = dg.datagrid('getSelected');
    			if (row == null) return false;//break;
    			  rowIndex = dg.datagrid('getRowIndex', row);
    			if (rowIndex == null) rowIndex = -1;
    			return false;//break;
    		});
    		return rowIndex;
    	}
    

    继承的方式

    这个比较难,因为,easyui底层的函数参数是混淆的。看不懂代码。

    不懂从哪里入手,想到看源码参考。比如 dialog 是从 window 继承过来的。

    init 和 Render是我自己猜的函数名。只是为了帮助理解。

    $.fn.dialog   //这个定义 dialog

    $.fn.dialog.methods  //写 dialog 自己的函数。

    $.fn.dialog.parseOptions  //解析参数

    $.fn.dialog.defaults  //dialog 自己的默认定义

    第一个  $.fn.dialog ,看注释:

    其它三个块:

    其中 $.fn.dialog.methods 只需要知道:添加方法,有一个参数 jq。

    好了,大概了解怎么写扩展了吧。

    在 init 重写事件

                onBeginEdit: function (index, row) { //这个function是 基类datagrid调用的。
                    opts.rowEditingIndexes.push(index);
                    opts.onBeginEdit.apply(this, [index, row]); //子类选项中的事件处理器调用
                }
    

      

    整个类的源码 不懂的怎么上传。

    有需要的话加这个群吧:334214995

  • 相关阅读:
    Hznu_0j 1533 计算球体积(水)
    电子警察
    UVA ——利用常量数组
    排序算法
    分解质因数
    几种数
    动态规划
    C. The Football Season (枚举) ( Codeforces Round #592 (Div. 2) )
    Fibonacci前n项和 (矩阵乘)
    2153: D.ly的排队问题 (拓扑排序)(vector , set , priority_queue )
  • 原文地址:https://www.cnblogs.com/goodfulcom/p/5284461.html
Copyright © 2011-2022 走看看