标签:Fix json menu search server str parentId lap root
最近打算自己弄一个后台,在整顿树形插件的时候,遇到问题,bootstrapTable treegrid最开始是怎么都显示不了树形,然后是数据出不来,
现在来记录下.
问题1:最开始怎么都显示不出来的问题,是因为 bootstrap-table.min.css 的问题.替换后OK了
问题2:数据不出来的问题,因为返回的数据格式不对.
$(‘#exampleTable‘)
.bootstrapTable(
{
type : "GET",
url : prefix + "/list", // 服务器数据的加载地址
idField: ‘menuId‘,
dataType: ‘json‘,
responseHandler: function (res) {
//将服务端你的数据转换成bootstrap table 能接收的类型
return {
"data": res.list //数据
};
},
// //请求服务器数据时,你可以通过重写参数的方式添加一些额外的参数,例如 toolbar 中的参数 如果
// queryParamsType = ‘limit‘ ,返回参数必须包含
// limit, offset, search, sort, order 否则, 需要包含:
// pageSize, pageNumber, searchText, sortName,
// sortOrder.
// 返回false将会终止请求
columns: [
{
field: ‘check‘, checkbox: true, formatter: function (value, row, index) {
if (row.check == true) {
// console.log(row.serverName);
//设置选中
return {checked: true};
}
}
},
{field: ‘name‘, title: ‘名称‘},
// {field: ‘id‘, title: ‘编号‘, sortable: true, align: ‘center‘},
// {field: ‘pid‘, title: ‘所属上级‘},
{field: ‘status‘, title: ‘状态‘, sortable: true, align: ‘center‘, formatter: ‘statusFormatter‘},
/* {field: ‘permissionValue‘, title: ‘权限值‘},
{
field: ‘operate‘,
title: ‘操作‘,
align: ‘center‘,
events: operateEvents,
formatter: ‘operateFormatter‘
}*/],
// bootstrap-table-treegrid.js 插件配置 -- start
//在哪一列展开树形
treeShowField: ‘name‘,
//指定父id列
parentIdField: ‘parentId‘, onResetView: function (data) {
//console.log(‘load‘);
$table.treegrid({
initialState: ‘collapsed‘,// 所有节点都折叠
// initialState: ‘expanded‘,// 所有节点都展开,默认展开
treeColumn: 1,
// expanderExpandedClass: ‘glyphicon glyphicon-minus‘, //图标样式
// expanderCollapsedClass: ‘glyphicon glyphicon-plus‘,
onChange: function () {
$table.bootstrapTable(‘resetWidth‘);
}
});
//只展开树形的第一级节点
$table.treegrid(‘getRootNodes‘).treegrid(‘expand‘);
},
onCheck: function (row) {
var datas = $table.bootstrapTable(‘getData‘);
// 勾选子类
selectChilds(datas, row, "id", "parentId", true);
// 勾选父类
selectParentChecked(datas, row, "id", "parentId")
// 刷新数据
$table.bootstrapTable(‘load‘, datas);
},
onUncheck: function (row) {
var datas = $table.bootstrapTable(‘getData‘);
selectChilds(datas, row, "id", "parentId", false);
$table.bootstrapTable(‘load‘, datas);
}
// bootstrap-table-treetreegrid.js 插件配置 -- end
});
因为是封装的数据,返回的和控件要求的对不上,所以得转一下.
标签:Fix json menu search server str parentId lap root
原文地址:https://www.cnblogs.com/JurasVon/p/11686942.html