本文目录一览:
- 1、求大神指点js生成树结构
- 2、如何使用js实现select下拉框里是树形结构
- 3、js的树形结构怎么实现
- 4、如何用js实现select下拉框里是树形结构,可复选,select框中传复选所有值?如下图所示。
求大神指点js生成树结构
// 生成树结构
function tree(list) {
const result = [];
for (let value of list) {
// 排除空字符串的情况
if (!value) {
continue;
}
const values = value.split('/');
// 查找树结构的当前级别是否已经存在,不存在则创建对象,并添加入列表。
let current = result.find(item = item.name === values[0]);
if (current === void 0) {
current = {};
result.push(current);
}
for (let i = 0, length = values.length; i length; i++) {
current.name = values[i];
if (i length - 1) {
// 如果还有下一级内容,判断当前是否有 children,没有则构建.
if (current.children === void 0) {
current.children = [];
}
// 查找下一级对象,为下一遍遍历构建对象
let nextCurrent = current.children.find(item = item.name === values[i + 1]);
if (nextCurrent === void 0) {
nextCurrent = {};
current.children.push(nextCurrent);
}
current = nextCurrent;
}
}
}
return result;
}
============ 假装分割线 ===========
以上代码是生成树的函数,调用 tree 函数并传入你的 input 数据,返回值就是生成的树。百科没找到传代码的地方了。
如何使用js实现select下拉框里是树形结构
1、手动的改成树形结构,在二级opint标签的内容前面加入空格,形成树形的样子。
2、用div等标签做成模拟的select下拉框。
目前除此之外应该没有其它的办法能做到。
不要找我要代码,自己试试。
js的树形结构怎么实现
这个问题,我建议你去下载下树形菜单。网上已经实现的js很多,下载下来一看就明白了,
如何用js实现select下拉框里是树形结构,可复选,select框中传复选所有值?如下图所示。
首先说树形结构,国内有个开源的js控件叫zTree,支持复选。
然后下拉框你可能需要自己做一个(html输入框+右边的一个图标按钮)。
最后,用一个隐藏的div把树形结构包起来,这个div设置成绝对定位,在下拉框右侧选择按钮的单击事件处理函数里,显示这个隐藏的div,并把它的位置设置成在下拉框下面就行了。
思路就是这样,要么楼主可以找找有没有其他更现成的控件,extjs4我记得有类似的,但是他的复选功能不太符合中国习惯,也许现在的版本改好了,你可以查查试试看。