我是用的django web开发架构;
想实现如下功能:


权限架构

点击checkbox时,能获取该checkbox的值;

代码如下:

<tr>

<th field="name" width="160px">组织架构</th>

{% for cap in caps_list %}

<th field="{{ cap.rightname }}" width="100px" formatter='formatCheckbox'>{{ cap.rightname }}</th>

{% endfor %}

<th field='depid' hidden width="100px">部门ID</th>

<th field='uid' hidden width="100px">用户ID</th>

<th field='rightvalue' hidden width="100px">权限值</th>

<script>

function setvalue(value,id){

var ret = $(this).attr('checked') ? 1: 0;

alert(ret?'checked':'not checked');

$('#setcaps_usertree').treegrid('select',id);

var node = $('#setcaps_usertree').treegrid('getSelected');

var opts = $('#setcaps_usertree').treegrid('getColumnFields');

alert(opts);

if (ret){

$(this).attr('checked',false);

node.rightvalue -= value;

} else {

$(this).attr('checked',true);

node.rightvalue += value;

}

alert(node.rightvalue);

}

function formatCheckbox(value,rec){

//var id = $(this).attr('field');

//var index = $('#setcaps_usertree').treegrid('getRowIndex',rec);

var a = "<input type='checkbox' onclick='setvalue("+value+","+rec.id+");'/>";

//alert(a);

return a;

}

</script>

</tr>

目前,这个实现有点问题,就是所有field都共用一个input元素,导致每次取checkbox是否checked时,是累积的;预期的功能是:每个input元素只表示这个treegrid中的一列,而不是表示所有的列;

已经解决;
因为input的标识是name,所以为input元素加一个name属性,
function setvalue(value,id){
var ret = $('#rightcheckbox').attr('checked') ? 1: 0;
//alert(ret?'checked':'not checked');
$('#setcaps_usertree').treegrid('select',id);
var node = $('#setcaps_usertree').treegrid('getSelected');
var opts = $('#setcaps_usertree').treegrid('getColumnFields');
//alert(opts);
if (ret){
$(this).attr('checked',false);
node.rightvalue -= value;
} else {
$(this).attr('checked',true);
node.rightvalue += value;
}
alert(node.rightvalue);
}

function formatCheckbox(value,rec){
//var id = $(this).attr('field');
//var index = $('#setcaps_usertree').treegrid('getRowIndex',rec);
var a = "<input name='rightcheckbox' type='checkbox' onclick='setvalue("+value+","+rec.id+");'/>";
//alert(a);
return a;
}

关于jquery easyui treegrid的问题的更多相关文章

  1. Jquery easyui treegrid实现树形表格的行拖拽

    前几天修改了系统的一个功能——实现树形列列表的行拖拽,以达到排序的目的.现在基本上功能实现,现做一个简单的总结. 1.拿到这个直接网上搜,有好多,但是看了后都觉得不是太复杂就是些不是特别想看的例子,自 ...

  2. jQuery easyui treegrid无法传参到后台bugger一记

    $("#lTreegrid").treegrid("options").queryParams={id:123456,name:"Hai he&quo ...

  3. Jquery EasyUI Treegrid按需加载子集

    项目说明,要一个有权限并且按需加载的树形列表. jeasyui网址 CSS <!--添加树状控件--> <link rel="stylesheet" type=& ...

  4. JQuery EasyUI treegrid展开与折叠,以及数据加载两次的问题

    问题:做项目的时候遇到代码生成的页面,只默认展开了一级节点,每次操作之后刷新还要手动一级一级展开,太麻烦了 官方API:http://www.jeasyui.net/plugins/186.html ...

  5. (转)jquery easyui treegrid使用小结 (主要讲的是如何编辑easyui中的行信息包括添加 下拉列表等)

    在实际应用中可能会碰到不同的需求,比如会根据每行不同的参数或属性设置来设置同列不同的editor类型,这时原有的例子就显的有点太过简单,不能实现我们的需求,现在应用我在项目中的操作为例,显示下实现同列 ...

  6. jquery easyui treegrid使用小结

    在实际应用中可能会碰到不同的需求,比如会根据每行不同的参数或属性设置来设置同列不同的editor类型,这时原有的例子就显的有点太过简单,不能实现我们的需求,现在应用我在项目中的操作为例,显示下实现同列 ...

  7. Jquery EasyUI中treegrid的中右键菜单和一般按钮同时绑定事件时的怪异事件

    做个项目使用jquery  easyui来做前端,也许是对此不是很熟悉,总是发现一些不可理解的事件. 主要源代码如下: <script type="text/javascript&qu ...

  8. Jquery EasyUI中treegrid

    Jquery EasyUI中treegrid的中右键菜单和一般按钮同时绑定事件时的怪异事件 InChatter系统开源聊天模块前奏曲   最近在研究WCF,又因为工作中的项目需要,要为现有的系统增加一 ...

  9. 求助关于jquery easyUI中的treegrid组件,请各位帮忙给个思路,谢谢啦

    现在项目中用到jquery easyUI中的treegrid组件,已经可以正常显示了.但是在保存的时候遇到问题,页面上参照官网的例子可以在页面更新,但是怎么获取编辑后的数据进而保存到数据库呢?

随机推荐

  1. mp3文件 ID3v2 帧标识的含义

    mp3文件 ID3v2 帧标识的含义 Declared ID3v2 frames The following frames are declared in this draft. 4.20 AENC ...

  2. Linux信号(signal) 机制分析

    Linux信号(signal) 机制分析 [摘要]本文分析了Linux内核对于信号的实现机制和应用层的相关处理.首先介绍了软中断信号的本质及信号的两种不同分类方法尤其是不可靠信号的原理.接着分析了内核 ...

  3. oracle删除数据库中的所有数据的拼接语句

    create or replace function count_rows/**查询各表实际记录数*/(table_name in varchar2,owner in varchar2 default ...

  4. Java容器类接口:Iterator,Collection,Map

    Iterator Iterator被称为迭代器,是一个对象,它的工作是遍历并选择序列中的对象,可以实现以下一些操作: 使用方法iterator()要求容器返回一个Iterator,Iterator将返 ...

  5. Python mix-in 组合 ~ 将类组合起来 .

    在一个池塘中有10个乌龟 1 条鱼 . class Turtle: def __init__(self,x): # 在生命对象的时候 说明对象的 数量 . (还是一个对象 . 数量只是该对象的一个属性 ...

  6. iOS开发环境C语言基础 数组 函数

    1 求数组元素的最大值 1.1 问题 创建程序,实现查询数组中最大值的功能,需求为:创建一个长度为10的数组,数组内放置10个0~99之间(包含0,包含99)的随机数作为数组内容,要求查询出数组中的最 ...

  7. 用jquery将复选框改成单选框

    前提是要包含jquery文件. 相关代码: jQuery(function($) { init_price_checkbox("by_price"); init_price_che ...

  8. mac自带apache服务器开启

    mac的os x操作系统自带的有apach服务器, 命令行:   sudo apachectl -v 可查看自带apache版本信息 输入: sudo apachectl start  就开启了apa ...

  9. Ubuntu 改变workspace布局

    今天花了点时间找ubuntu的workspace布局.发现一个软件,tweak, 非常好用,可以随意调整布局. Ref: http://ubuntuhandbook.org/index.php/201 ...

  10. struct和typedef struct的区别

    当typedef与结构结合使用时,会有一些比较复杂的情况,而且在C语言和C++里面有略有差别,因此从网上摘录了一些资料. 1 首先:      在C中定义一个结构体类型要用typedef:       ...