easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

说明:代码修改不易,仅供参考,转载请说明出处。文章后面有这个修改过后的插件下载地址。

1、首先上效果图,看看是不是你想要的效果。(展开在列里面不是在冻结列或者前面添加+号的展开。)

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

2、实现步骤。

(1):先去下载修改之后的插件,引入jsp页面中。在easyui的js后面。个人建议放在js引入的最后,防止冲突。

(2):在$(function){})方法之前调用。也就是jq初始化之前去调用intoFrozenColumns方法。

            detailview.intoFrozenColumns("cz","<a href='javascript:;'>展开</a>","<a href='javascript:;'>收起</a>",false);
            $("#ordertable").datagrid({});

           detailview.intoFrozenColumns这个固定搭配不能修改。后面的参数,第一个参数就是你要将展开收缩放再那个位置的field。

           第二参数,第三个参数就不用说明了,自己看了都知道。

           第四个参数是判断你放展开和收缩的这一列是否是冻结列,不是冻结列的话,就填false,是的话就填true。

(3):$("#ordertable").datagrid({})里面初始化datagrid的时候,一个属性,

            view: detailview,

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

(4):detailFormatter添加这个属性,返回的是你具体的要展开的面板。如下图所示

          return的东西就是你要收缩展开的内容。

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

 (5):如果你展开的里面还有表格,那么你接下来的在展开的时候去渲染那个表格,继续添加事件

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

(6):如果展开的面板中还有列编辑的话,在收缩行的时候,将编辑器关闭掉,防止下次打开出现卡顿。

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

(7):修复关闭region='west'版面时出现展开收缩的面板不随外层div变化而变化。

easyui datagridview拓展(自己写的插件),展开收缩放在列里面,不是在冻结列,前面不带有+号

自此使用步骤完毕,有不懂的地方欢迎留言,。

datagrid-detailview.js插件下载地址:https://download.csdn.net/download/qq_24612753/10859276

datagrid-detailview.js说明:在插件里面重写了inserRow方法,修复了,添加之后出现的不能展开的bug。同时也重写了一些其他的方法,欢迎各位指正