treegrid,可以展开的jqgrid树

效果图

 

html部分

<div class="padding20 bgWhite marginTop20">
<div class="cus-grid row" id="grid-wrap">
<div class="col-lg-12">
<table id="list2"></table>
<div id="pager2"></div>
</div>
</div>
</div>

js部分
<script>

$(document).ready(function(){
var topicjson={
"response": [

{"id": "1", "name": "项目1","score": "88","pro": "66.6%","handle": "", level:"0", parent:"", isLeaf:false, expanded:true, loaded:true },
{"id": "1_1","name": "因子1","score": "88","pro": "66.6%","handle": "", level:"1", parent:"1", isLeaf:false, expanded:true, loaded:true},
{"id": "1_1_1","name": ">=10","score": "88","pro": "66.6%","handle": "", level:"2", parent:"1_1", isLeaf:true, expanded:false, loaded:true},
{"id": "1_1_2","name": ">=8","score": "88","pro": "66.6%","handle": "", level:"2", parent:"1_1", isLeaf:true, expanded:false, loaded:true},
{"id": "1_2","name": "因子1","score": "88","pro": "66.6%","handle": "", level:"1", parent:"1", isLeaf:false, expanded:true, loaded:true},
{"id": "1_2_2","name": ">=8","score": "88","pro": "66.6%","handle": "", level:"2", parent:"1_2", isLeaf:true, expanded:false, loaded:true},
{"id": "2", "name": "项目2","score": "88","pro": "66.6%","handle": "", level:"0", parent:"", isLeaf:false, expanded:true, loaded:true },
{"id": "3", "name": "项目3","score": "88","pro": "66.6%","handle": "", level:"0", parent:"", isLeaf:false, expanded:true, loaded:true },
{"id": "4", "name": "项目4","score": "88","pro": "66.6%","handle": "", level:"0", parent:"", isLeaf:false, expanded:true, loaded:true }

]
},
grid;

var lastsel;
grid = jQuery("#list2");
grid.jqGrid({
datastr: topicjson,
datatype: "jsonstring",
height: "auto",
loadui: "disable",
colNames: ['id','项目名称', '分值', '权重','操作'],//jqGrid的列显示名字
colModel : [ //jqGrid每一列的配置信息。包括名字,索引,宽度,对齐方式.....
{name: 'id', key: true, hidden:true},
{name : 'name',index : 'name',editable : false,width: 220,editoptions : {readonly : true,size : 10},align:"left"},
{name : 'score', width: 220,index : 'filesize',editable : true,editoptions : {size : 10},align:"left"},
{name : 'pro',index : 'date',width: 220,editable : true,editoptions : {size : 10},align:"left"},
{name : 'handle',width: 220,index : 'handle',editable : true,editoptions : {size : 10},align:"left",
formatter: formatContext
}

],
treeGrid: true,
pager : '#pager2',//表格页脚的占位符(一般是div)的id
treeGridModel: "adjacency",
ExpandColumn: "name",
treeIcons: {leaf:'ui-icon-document-b'},
// caption: "jqGrid Demos",
//autowidth: true,
rowNum: 10000,
//ExpandColClick: true,
jsonReader: {
repeatitems: false,
root: "response"
},
onSelectRow: function(id){
if(id && id!==lastsel){
grid.jqGrid('restoreRow',lastsel);
// grid.jqGrid('editRow',id,true);
lastsel=id;
}
}
});
});
//创建layer弹幕层
//格式化表格

function formatContext( cellvalue, options, rowObject ){
var id = options.rowId;
return '<span class="handle" οnclick="edit(this)">编辑</span><span class="handle" οnclick="deleteApply(this)">删除</span>';

}

</script>
 

 

转载于:https://www.cnblogs.com/required/p/10430004.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jqGrid TreeGrid 支持两种模式:嵌套模式(nested)和相邻模式(adjacency)。相邻模式是指表格数据中每个节点除了包含自身信息外,还包含其父节点的信息。以下是在 jqGrid TreeGrid 中使用相邻模式的基本步骤: 1. 定义表格列模型,包括节点 ID、节点名称、父节点 ID 等列。例如: ```javascript colModel: [ { name: 'id', width: 50, key: true }, { name: 'name', width: 150 }, { name: 'parent', width: 50, hidden: true } ] ``` 2. 加载表格数据,数据中每个节点应包含其父节点 ID。例如: ```javascript var data = [ { id: 1, name: 'Node 1', parent: null }, { id: 2, name: 'Node 2', parent: 1 }, { id: 3, name: 'Node 3', parent: 1 }, { id: 4, name: 'Node 4', parent: null }, { id: 5, name: 'Node 5', parent: 4 }, { id: 6, name: 'Node 6', parent: 4 } ]; $("#treegrid").jqGrid({ data: data, datatype: "local", colModel: [ { name: 'id', width: 50, key: true }, { name: 'name', width: 150 }, { name: 'parent', width: 50, hidden: true } ], treeGrid: true, treeGridModel: "adjacency", ExpandColumn: 'name', ExpandColClick: true, caption: "TreeGrid Example" }); ``` 3. 配置 TreeGrid 相关参数,包括 treeGridtreeGridModel 以及 ExpandColumn 等参数。 以上示例中的 treeGrid 参数设置为 true,表示启用 TreeGrid 功能;treeGridModel 参数设置为 adjacency,表示使用相邻模式;ExpandColumn 参数设置为 'name',表示使用名称列作为展开节点的列。 4. 启用 TreeGrid 功能,例如: ```javascript $("#treegrid").jqGrid('setGridParam', {treeGrid: true}).trigger('reloadGrid'); ``` 通过以上步骤,你就可以在 jqGrid TreeGrid 中使用相邻模式来展示形数据了。需要注意的是,相邻模式的数据结构相对复杂,需要根据具体需求进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值