html页面,回显部门树中被选中的部门
时间: 2024-03-20 19:44:12 浏览: 12
如果你想在 HTML 页面上回显被选中的部门,可以在生成部门树的过程中加入判断条件来判断该部门是否被选中,并添加相应的样式或者标记。具体实现方式如下:
1. 在部门树数据结构中添加一个 `selected` 属性,用来表示该部门是否被选中。例如:
```
var departmentTree = [
{
name: '部门A',
children: [
{
name: '部门A-1',
children: [],
selected: false
},
{
name: '部门A-2',
children: [
{
name: '部门A-2-1',
children: [],
selected: false
},
{
name: '部门A-2-2',
children: [],
selected: true
}
],
selected: false
}
],
selected: false
},
{
name: '部门B',
children: [
{
name: '部门B-1',
children: [],
selected: false
},
{
name: '部门B-2',
children: [
{
name: '部门B-2-1',
children: [],
selected: false
},
{
name: '部门B-2-2',
children: [],
selected: false
}
],
selected: false
}
],
selected: false
}
];
```
2. 在遍历部门树的过程中,判断当前部门是否被选中,如果是则添加相应的样式或者标记。例如:
```
function renderDepartmentTree(departmentTree, ulElement) {
departmentTree.forEach(function(department) {
var liElement = document.createElement('li');
liElement.innerText = department.name;
if (department.selected) {
// 如果当前部门被选中,则添加 selected 样式
liElement.classList.add('selected');
}
if (department.children.length > 0) {
var subUlElement = document.createElement('ul');
liElement.appendChild(subUlElement);
renderDepartmentTree(department.children, subUlElement);
}
ulElement.appendChild(liElement);
});
}
```
在上面的示例代码中,我们在遍历部门树的过程中,判断当前部门是否被选中,如果是则添加 `selected` 样式。你可以根据实际需求来修改这个样式,例如修改背景颜色、字体颜色等。
另外,如果你需要获取用户选中的部门信息,可以在点击部门时触发一个事件,并将选中的部门信息保存起来。例如:
```
function handleDepartmentClick(event) {
var selectedDepartment = event.target.innerText;
// 将选中的部门信息保存到某个变量中
selectedDepartments.push(selectedDepartment);
}
var departmentTreeElement = document.getElementById('departmentTree');
departmentTreeElement.addEventListener('click', handleDepartmentClick);
```
在上面的示例代码中,我们使用 `addEventListener` 方法为部门树添加一个点击事件监听器,当用户点击某个部门时,触发 `handleDepartmentClick` 函数,并将选中的部门信息保存到 `selectedDepartments` 变量中。你可以根据实际需求来修改这个变量的数据结构和内容。