jQuery MiniUI
标题:
TreeGrid动态加载列
[打印本页]
作者:
phinxe
时间:
2019-4-15 15:01:16
标题:
TreeGrid动态加载列
html代码:<div id="treeGrid"></div>js代码:
var
columns = [
{
type
:
'indexcolumn'
}
,
{
field
:
'menuName'
,
header
:
'菜单名称'
,
width
:
'auto'
}
,
{
field
:
'menuType'
,
header
:
'类型'
,
width
:
50
}
,
{
field
:
'orderNum'
,
header
:
'排序'
,
align
:
'center'
,
width
:
48
}
,
{
field
:
'url'
,
header
:
'地址'
}
,
{
field
:
'perms'
,
header
:
'权限标示'
}
,
{
field
:
'action'
,
header
:
'操作'
,
align
:
'center'
}
]
;
// 2、这里为grid赋值数据,只有这里成功了后面的调用才能成功。
grid = risk.
setTreeGrid
({
id
:
'treeGrid'
,
options
: {
ajaxType
:
'get'
,
treeColumn
:
'menuName'
,
url
: basePath + risk.
getArrayItem
(axios
,
'key'
,
'list'
).
url
,
columns
: columns
}
})
;
setTreeGrid
:
function
(grid) {
var
defaults = {
url
:
''
,
style
:
'width:100%;height:400px;'
,
id
:
'asyncDataGrid'
,
ajaxType
:
'get'
,
columns
: []
,
multiSelect
:
true
,
expandOnLoad
:
true
,
allowResize
:
true
,
allowCellEdit
:
true
,
allowCellSelect
:
true
,
allowRowSelect
:
true
,
showPager
:
false
,
showExpandButtons
:
true
}
;
var
options = $.
extend
(defaults
,
grid.
options
)
;
//动态创建表格
var
_grid =
new
mini
.
TreeGrid
()
;
var
_url = options.
url
;
delete
options.
url
;
_grid.
set
(options)
_grid.
render
(document.
getElementById
(grid.
id
))
;
var
treeList = risk.
httpGet
(_url).
map
(
function
(t) {
delete
t.
visible
return
t
})
;
_grid.loadList(treeList
,
'id'
,
'parentId'
)
;
console.
log
(_grid.
getRootNode
())
return
_grid
;
}最终表格数据都有了,但是treeColumn不生效,没有树结构。[attach]12120[/attach]
作者:
dforce
时间:
2019-4-15 15:18:01
menuName需要对应一列的name,不是field,设置一下name
作者:
phinxe
时间:
2019-4-15 16:21:13
dforce 发表于 2019-4-15 15:18
menuName需要对应一列的name,不是field,设置一下name
感谢大佬,已经按指示完美解决问题。
欢迎光临 jQuery MiniUI (http://miniui.com/discuss/)
Powered by Discuz! X2