怎么做table 表格下拉树

本文介绍了如何创建带有下拉树功能的表格。首先,加载一级目录,接着通过点击事件来动态加载二级目录,通过插入TR元素实现表格的扩展。
摘要由CSDN通过智能技术生成



这样的效果需要两部,第一步,加载一级目录,

然后,点击触发事件,加载二级目录,插入tr


/*

默认触发事件

*/

$(function(){
	
	initGridSource2();
});

/**

加载一级数据

**/

initGridSource2=function(){
	 var initData2 =gridSourcemain.initData2();
	 var initData3=[];
	 for(var i =0;i<initData2.length;i++){
		 if(initData2[i].parentId==0){
			 
			 initData3.push(initData2[i]);
		 }
		 
	 }
	gridSourcemain.initSource2(initData3);
};

/*

默认加载一级目录

**/

initSource2:function(sourceData){
	var imgStr1 ="<img src='"+basePath+"/images/main/hengxiang_07.png'>";
	var hongse1="<img class='imgcss' src='"+basePath+"/images/main/hongse1.png'>";
	var hongse2="<img class='imgcss' src='"+basePath+"/images/main/hongse2.png'>";
	var huangse1="<img class='imgcss' src='"+basePath+"/images/main/huangse3.png'>";
	var huangse2="<img class='imgcss' src='"+basePath+"/images/main/huangse4.png'>";
	var lvse="<img class='imgcss' src='"+basePath+"/images/main/lvse5.png'>";
	
	var html = '';
	var len=sourceData.length;
	for(var i=0;i<len;i++) {
		var item = sourceData[i];
		var sid=item.sid;
		var name=item.name || "";
		var integrityRate=item.integrityRate || 0;
		var integrityColor = "";
		if(integrityRate >= 90) {
			integrityColor = lvse;
		}else if(integrityRate >= 80 && integrityRate < 90) {
			integrityColor = huangse2;
		}else if(integrityRate &
在Vue实现表格下拉多选筛选的方法有许多种,以下是一种可能的实现方式: 1. 首先,在Vue组件定义一个表格数据源的数组(比如dataList)和一个保存筛选条件的数组(比如selectedOptions)。 2. 在模板,使用`<select>`标签创建一个下拉多选框,并通过`v-model`指令将选的选项绑定到selectedOptions数组上。 3. 使用`<table>`标签创建一个表格,并通过`v-for`指令遍历dataList数组,将每一行数据显示在表格。 4. 在表格的头部或者其他合适的位置,添加一个“筛选”按钮,并为其绑定一个点击事件(比如`@click="filterData"`)。 5. 在Vue实例的methods,定义filterData方法,在该方法内部根据selectedOptions数组的选项对dataList数组进行筛选操作,生成一个新的数组(比如filteredData)。 6. 将filteredData数组赋值给表格数据源的数组dataList,即可实现表格的筛选效果,页面会根据选的筛选条件实时更新。 具体代码示例: ```html <template> <div> <select multiple v-model="selectedOptions"> <option v-for="option in options" :value="option">{{ option }}</option> </select> <button @click="filterData">筛选</button> <table> <thead> <tr> <th>Name</th> <th>Age</th> <th>Email</th> </tr> </thead> <tbody> <tr v-for="item in dataList" :key="item.id"> <td>{{ item.name }}</td> <td>{{ item.age }}</td> <td>{{ item.email }}</td> </tr> </tbody> </table> </div> </template> <script> export default { data() { return { options: ['Option 1', 'Option 2', 'Option 3'], // 下拉多选框的选项 selectedOptions: [], // 选的选项 dataList: [ // 表格数据源 { id: 1, name: 'John', age: 30, email: 'john@example.com' }, { id: 2, name: 'Alice', age: 25, email: 'alice@example.com' }, { id: 3, name: 'Bob', age: 35, email: 'bob@example.com' } ] }; }, methods: { filterData() { // 根据选的选项对数据源进行筛选 this.dataList = this.dataList.filter(item => this.selectedOptions.includes(item.name)); } } }; </script> ``` 以上是一种简单的实现方式,可以根据实际需求进行修改和扩展。希望对你有帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值