jQuery MiniUI

 找回密码
 立即注册
查看: 13145|回复: 23
打印 上一主题 下一主题

datagrid如何修改cellhtml [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2017-2-21 17:02:57 |只看该作者 |倒序浏览
本帖最后由 xhd92811 于 2017-2-21 17:16 编辑


想要对有效无效,进行控制,单点一下在有效无效之间切换,参考例子,把有效无效放下<a></a>里面设置到e.cellhtml,求教如何才能实现功能

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2017-2-21 18:52:45 |只看该作者

参考这个例子

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 2

板凳
发表于 2017-2-22 10:08:02 |只看该作者
dforce 发表于 2017-2-21 18:52
参考这个例子

感谢,不过尝试了下,能够改变前面的几个值,但是那个有效无效还是没变化

Rank: 2

地板
发表于 2017-2-22 10:14:43 |只看该作者
dforce 发表于 2017-2-21 18:52
参考这个例子

发现动态修改的是value值,但是cellhtml没有发生变化

Rank: 8Rank: 8

5#
发表于 2017-2-22 11:02:25 |只看该作者
xhd92811 发表于 2017-2-22 10:14
发现动态修改的是value值,但是cellhtml没有发生变化

看我贴你的例子了吗,不是点击有效无效可以来回切换了?
你还需要做什么?

Rank: 2

6#
发表于 2017-2-22 11:23:41 |只看该作者
本帖最后由 xhd92811 于 2017-2-22 11:26 编辑
felt 发表于 2017-2-22 11:02
看我贴你的例子了吗,不是点击有效无效可以来回切换了?
你还需要做什么? ...

我看了你的列子,尝试以后我能改变是对应的field 的value 值,我是想有效无效按钮只有1个,点击有效,按钮变成无效,再次点击,无效变成有效,切换cellhtml 里面的超链接,不是说分别点击无效有效,改变当前某一个列的值 ----------------------------------就是动态的修改当前行的操作列的cellHtml值

Rank: 8Rank: 8

7#
发表于 2017-2-22 11:43:25 |只看该作者
xhd92811 发表于 2017-2-22 11:23
我看了你的列子,尝试以后我能改变是对应的field 的value 值,我是想有效无效按钮只有1个,点击有效,按钮 ...

没有什么,就是类似的效果
我做的例子里面绘制了2个超链接,可以点击相互切换,你可以实现别的逻辑

Rank: 2

8#
发表于 2017-2-22 12:14:09 |只看该作者
felt 发表于 2017-2-22 11:43
没有什么,就是类似的效果
我做的例子里面绘制了2个超链接,可以点击相互切换,你可以实现别的逻辑 ...

关键不知道怎么通过updaterow 如何去更改cellhtml值啊..你的例子,我只看过代码,刚打开页面空白的

以下是我的部分代码,并不能实现有效无效的值改变,就类似miniui里面的下拉框的TEXT值和VALUE值,只能改变VALUE值,
我百度查到过displayField,但是不行

  grid.set({      
              url:'<%=request.getContextPath()%>/bpm/creditApproval/AjaxService.jsp?method=selectRoleUser',   
            columns: [
                { type: "checkcolumn" },
                { type: "indexcolumn",header:"序号" },
                { field: "ROLE_NAME", width: 120, headerAlign: "center", allowSort: false, header: "角色名称"},
                { field: "EMPNAME", width: 120, headerAlign: "center", allowSort: false, header: "用户姓名"},
                { field: "USERID", width: 120, headerAlign: "center", allowSort: false, header: "用户OA账号"},
                { field: "MANAGER",name:"action",width: 120, headerAlign: "center", allowSort: false, header: "操作"},
                { field: "STATUS",name:"status",width: 120, headerAlign: "center", allowSort: false, header: "是否有效"}
                  
            ]
        });
       grid.hideColumn("status");      
  }
    function Manager(row_uid){        
        var row = grid.getRowByUID(row_uid);
          console.log(row);   
          grid.updateRow(row, {MANAGER:222});   
}

grid.on("drawcell",function(e){                                                   
             var record = e.record,column = e.column,field = e.field,value = e.value,uid = record._uid;
             if (column.name == "action") {
                     e.cellHtml='<a href="javascript:Manager(\'' + uid + '\')">有效</a>&nbsp;'
                        + '<a href="javascript:Manager(\'' + uid + '\')">无效</a>';   
                    e.cellStyle = "text-align:center";                        
             }   
             console.log(e);        
        })   

Rank: 8Rank: 8

9#
发表于 2017-2-22 17:43:39 |只看该作者
xhd92811 发表于 2017-2-22 12:14
关键不知道怎么通过updaterow 如何去更改cellhtml值啊..你的例子,我只看过代码,刚打开页面空白的

以 ...

只有在drawcell的时候有cellHtml这个概念,外部修改都是updateRow,updateRow会触发ondrawcell事件,对应的行会重绘。

你的代码里面这列已经是绘制成有效无效了,你updateRow,更新这个字段显示上是看不到效果的。

Rank: 2

10#
发表于 2017-2-27 16:24:14 |只看该作者
felt 发表于 2017-2-22 17:43
只有在drawcell的时候有cellHtml这个概念,外部修改都是updateRow,updateRow会触发ondrawcell事件,对应 ...

那有么有办法做到我要的那种效果

Archiver|普加软件

GMT+8, 2025-5-11 18:09 , Processed in 1.038819 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部