通过JavaScript实现tabletree

        因为项目需要,所以花了一天时间写了这个tabletree,部分源码参考http://chenjumin.javaeye.com/blog/212757,改写的目的是因为网上的都没有找到不刷新就能够动态的增加、删除、修改、节点的功能,时间仓促所以基本代码都写在一个html中了,另外使用到了一些jquery的插件.

        既然是无刷新增加删除节点,那么肯定用到ajax技术了,所以这边用到了jquery的ajax。

 

点选某个TR节点点击右键可以新增节点

点选更新节点时效果

 

源码下载地址:

http://download.csdn.net/source/863164

根据提供的代码,可以看出这是一个使用antd-v的table tree组件。要实现全部展开和全部折叠的功能,可以通过控制每一行的展开状态来实现。 首先,你可以在data中添加一个属性来表示每一行的展开状态,例如isExpanded。然后,在expandIcon方法中,根据isExpanded的值来确定展开图标的类型。 要实现全部展开的功能,你可以遍历data数组,将每一行的isExpanded属性设置为true。要实现全部折叠的功能,你可以将每一行的isExpanded属性设置为false。 最后,重新渲染table组件,根据每一行的isExpanded属性来确定展开图标的类型。 以下是一个示例代码,用于实现全部展开和全部折叠的功能: ```javascript // 在data中添加isExpanded属性 data.forEach(item => { item.isExpanded = true; // 默认全部展开 }); // 在expandIcon方法中根据isExpanded属性确定展开图标的类型 expandIcon(props) { if (props.record.children.length > 0) { if (props.record.isExpanded) { return ( <span class="table-icon" onClick={(e) => { props.onExpand(props.record, e); }}> <a-icon type="caret-down" /> </span> ); } else { return ( <span class="table-icon" onClick={(e) => { props.onExpand(props.record, e); }}> <a-icon type="caret-right" /> </span> ); } } else { return <span style="margin-right:19px"></span>; } } // 添加全部展开和全部折叠的功能 handleExpandAll() { data.forEach(item => { item.isExpanded = true; }); // 重新渲染table组件 // ... } handleCollapseAll() { data.forEach(item => { item.isExpanded = false; }); // 重新渲染table组件 // ... } ``` 通过调用handleExpandAll和handleCollapseAll方法,你可以实现全部展开和全部折叠的功能。 #### 引用[.reference_title] - *1* [antd-vue的树形table组件修改展开图标](https://blog.csdn.net/qq_40567849/article/details/124443188)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值