如何在jstree的create_node函数中添加li_attr属性数据?
在jstree的create_node中添加li_attr数据
jstree的create_node方法第三个参数支持传入节点配置对象,你可以在这个对象里直接定义li_attr属性,用来设置节点对应的<li>标签的HTML属性。
修改后的代码示例
.jstree('create_node', $(parent_node), { text: new_node_text, // 直接传入节点文本,无需eval(如果new_node_text是字符串) li_attr: { id: 'custom-node-id', class: 'my-node-class', 'data-info': 'some-custom-data' // 自定义data属性 } }, position, false, false);
补充说明
- 如果你的
new_node_text原本是一个包含text字段的JSON字符串,建议用JSON.parse替代eval(避免安全风险),再给它添加li_attr:
const nodeData = JSON.parse(new_node_text); nodeData.li_attr = { class: 'highlight-node' }; .jstree('create_node', $(parent_node), nodeData, position, false, false);
li_attr对象中的键值对会直接映射为<li>标签的属性,比如上面的配置会生成类似这样的HTML:
<li id="custom-node-id" class="my-node-class" data-info="some-custom-data">...</li>
内容的提问来源于stack exchange,提问作者lf11
相关产品推荐
相关产品推荐

