我在"name"列中构建了带嵌入式复选框的treeGrid,例如JSON数据:
{"id":"1","name":"<input type='checkbox' class='itmchk' ><strong>ECHANGEUR<\/strong>","level":"0","parent":"null","isLeaf":false,"expanded":true,"loaded":true}
Run Code Online (Sandbox Code Playgroud)
因为这些复选框跟随树边缘(我希望我很好理解,因为我是法国人).
当我标记/取消标记一行时,我想检查/取消选中子标题复选框,但在阅读后可能会发布帖子,我可以获得预期的结果.
例如说明:如果我单击父行复选框(因此它变为UNCHECKED),则子级别行变为UNCHECKED
我是jqGrid的新手,但它是一个很棒的工具,我想学习属性.请你能以这种方式开车送我吗?或者你能建议我在哪里可以找到我想做的例子吗?我查了一下文档但没有成功.
非常感谢JiheL
我是jqGrid的新手,我用本地数据构建了一个jqGrid treeGrid,一切都很好.但是现在我正在尝试用远程JSON数据做同样的事情,我无法获得treeGrid显示我的数据.这是treeGrid conf:
$("#"+subgrid_table_id).jqGrid({
url:"sg511e.php?id="+row_id+"&btr="+btr,
datatype:"json",
mType:'POST',
loadui: "disable",
colNames:['id','Prestations'],
colModel:[
{name:'id',index:'id',width:100,hidden:true},
{name:'name',index:'name',width:785,sortable:false}
],
pager: pager_id,
sortname: 'id',
sortorder: "asc",
hiddengrid:true,
gridview: true,
treeGrid:true,
treeGridModel: "adjacency",
treedatatype: 'json',
ExpandColumn: 'name',
jsonReader: {
repeatitems: false,
root: "rows"
},
Run Code Online (Sandbox Code Playgroud)
和JSON数据:
{
"page": 1,
"total": 1,
"records": 1,
"rows": [
{
"cell": {
"id": "1",
"name": "ECHANGEUR",
"level": "0",
"parent": "",
"isLeaf": true,
"expanded": false,
"loaded": true
}
},
{
"cell": {
"id": "1_1",
"name": "Intervention Aller sur Site",
"level": "1",
"parent": "1", …Run Code Online (Sandbox Code Playgroud) 在这篇文章之后,我发现了一些方法可以做到这一点,我希望得到它,我遇到了一些麻烦.这是我的代码:
var myDlg = $("#dlgpers"),lastsel;
myDlg.jqGrid({
url:'pers.php?id='+dataRow.id,
mtype:'GET',
datatype: "json",
ajaxGridOptions: { cache: false },
height:250,
cmTemplate: {sortable:false},
gridview: true,
cellEdit:true,
scroll:false,
colNames:['Id','Label','Information','Type','Data'],
colModel:[
{name:'id',index:'id',hidden:true,key:true},
{name:'label',index:'label',align:'right',width:100,editable:false,
cellattr: function (rowId, val, rawObject, cm, rdata) {
return ' style="font-weight:bold;margin-right:5px;border-left:0;border-top:0;" class="ui-state-active"' ;
}
},
{name:'info',index:'info',width:200,editable:true,edittype:'text'},
{name:'type',index:'type',width:30,hidden:true},
{name:'data',index:'data',width:30,hidden:true}
],
loadComplete: function () {
var rowIds = myDlg.jqGrid('getDataIDs');
$.each(rowIds, function (i, row) {
var rowData = myDlg.jqGrid('getRowData',row);
if (rowData.type == 'select') {
myDlg.jqGrid('restoreRow', row);
var cm = myDlg.jqGrid('getColProp', 'info');
cm.edittype = 'select';
cm.editoptions …Run Code Online (Sandbox Code Playgroud)