<el-table ref="multipleTable" :data="tableData" border class="table" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center"/> <el-table-column :show-overflow-tooltip="true" prop="PCMC" label="批次名称" align="center"/> <el-table-column prop="PCBH" label="批次编号" align="center"/> <el-table-column prop="CGFSName" label="采购方式" align="center"/> <el-table-column prop="CGLXName" label="采购类型" align="center"/> <el-table-column prop="ZBR" label="项目负责人" align="center"/> <el-table-column prop="CGNF" label="采购年份" align="center"/> <el-table-column prop="XMZT" label="项目状态" align="center"> <template slot-scope="scope"> <p v-if="scope.row.XMZT==='正在招标'" style="color:#67c23a">正在招标</p> <p v-if="scope.row.XMZT==='项目创建'" style="color:#e6a23c">项目创建</p> <p v-if="scope.row.XMZT==='已经截止'" style="color:red">已经截止</p> <p v-if="scope.row.XMZT==='已截标,正在开标中'" style="color:#67c23a">已截标,正在开标中</p> </template> </el-table-column> <el-table-column label="操作" align="center"> <template slot-scope="scope"> <el-button v-if="typeNum==='6'" type="text" icon="el-icon-search" @click="handleEdit6(scope.$index, scope.row)">查看 </el-button> </template> </el-table-column>修改查看按钮,点击按钮跳转到另一个页面并传递参数
时间: 2023-10-12 20:04:49 浏览: 175
这段代码是一个使用Element UI的el-table组件来展示数据的表格。表格包括多个el-table-column列,每列对应表格的一个字段。
其中,第一列是一个选择列,使用type="selection"设置。其他列使用prop属性指定对应数据项的字段名,并使用label属性设置列的标题。在一些列中,使用了slot-scope="scope"来自定义列的内容,例如在"项目状态"列中根据不同的状态显示不同的文本。
最后一列是一个操作列,使用了slot-scope="scope"来自定义列的内容。在这里,根据typeNum的值是否为6,决定是否显示查看按钮。点击查看按钮时,会调用handleEdit6方法,并传递参数scope.$index和scope.row。
如果你想修改查看按钮的行为,你可以在handleEdit6方法中添加相应的逻辑来处理页面跳转和参数传递。
相关问题
<div> <input type="text" v-model="searchId" placeholder="请输入sample_id"> <button @click="search">搜索</button> <el-table ref="multipleTable" :data="filteredData" tooltip-effect="dark" style="width: 100%" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55"></el-table-column> <el-table-column prop="sample_id" label="sample_id" width="120"> <template slot-scope="scope">{{ scope.row.sample_id }}</template> </el-table-column> <el-table-column prop="feature0" label="feature0" width="120"></el-table-column> <el-table-column prop="feature1" label="feature1" width="120"></el-table-column> <el-table-column prop="feature2" label="feature2" width="120"></el-table-column> <el-table-column label="操作" fixed="right" width="135"> <template slot-scope="scope"> <el-button type="text" @click=handleEdit(scope.$index)>编辑</el-button> <el-button type="text" @click="deleteRow(scope.$index)">删除</el-button> </template> </el-table-column> </el-table> </div> </template>根据sample_id的值进行查询
要根据 `sample_id` 的值进行查询,你可以在点击搜索按钮时触发 `search` 方法,在该方法中过滤 `tableData` 数组并将结果赋值给 `filteredData`。以下是一个示例代码:
```javascript
data() {
return {
searchId: '',
tableData: [], // your table data array
filteredData: [] // array to store filtered data
}
},
methods: {
search() {
if (this.searchId.trim() === '') {
this.filteredData = this.tableData; // if searchId is empty, show all data
} else {
this.filteredData = this.tableData.filter(item => {
return String(item.sample_id).includes(this.searchId);
});
}
}
}
```
在上述代码中,`searchId` 是通过 `v-model` 绑定到输入框上的变量,`tableData` 是你的表格数据数组,`filteredData` 是用于存储过滤后的数据的数组。
当点击搜索按钮时,会调用 `search` 方法。如果 `searchId` 为空,则将 `filteredData` 设置为整个 `tableData` 数组;否则,通过使用 `filter` 方法来过滤 `tableData`,并将结果赋值给 `filteredData`。
这样,当你在输入框中输入 `sample_id` 值并点击搜索按钮时,表格会根据 `sample_id` 的值进行查询并显示符合条件的数据。
template> <div> <input type="text" v-model="searchId" placeholder="请输入sample_id"> <button @click="search">搜索</button> <table> <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55"> </el-table-column> <el-table-column prop="sample_id" label="sample_id" width="120"> <template slot-scope="scope">{{ scope.row.sample_id }}</template> </el-table-column> <el-table-column prop="feature0" label="feature0" width="120"></el-table-column> <el-table-column prop="feature1" label="feature1" width="120"></el-table-column> <el-table-column prop="feature2" label="feature2" width="120"></el-table-column> <el-table-column label="操作" fixed="right" width="135"> <template slot-scope="scope"> <el-button type="text" @click=handleEdit(scope.$index)>编辑</el-button> <el-button type="text" @click="deleteRow(scope.$index)">删除</el-button> </template> </el-table-column> </el-table> <tbody> <tr v-for="item in filteredData" :key="item.sample_id"> <td>{{ item.sample_id }}</td> <td>{{ item.feature0 }}</td> <td>{{ item.feature1 }}</td> <!-- 其他特征属性的表格内容 --> </tr> </tbody> </table> </div> </template> 利用vue实现查询功能,并将结果显示到原有的表格中
你可以在原有的代码基础上进行修改,将查询功能和结果集集成到现有的表格中。以下是一个示例代码:
```html
<template>
<div>
<input type="text" v-model="searchId" placeholder="请输入sample_id">
<button @click="search">搜索</button>
<el-table ref="multipleTable" :data="filteredData" tooltip-effect="dark" style="width: 100%"
@selection-change="handleSelectionChange">
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column prop="sample_id" label="sample_id" width="120">
<template slot-scope="scope">{{ scope.row.sample_id }}</template>
</el-table-column>
<el-table-column prop="feature0" label="feature0" width="120"></el-table-column>
<el-table-column prop="feature1" label="feature1" width="120"></el-table-column>
<el-table-column prop="feature2" label="feature2" width="120"></el-table-column>
<el-table-column label="操作" fixed="right" width="135">
<template slot-scope="scope">
<el-button type="text" @click=handleEdit(scope.$index)>编辑</el-button>
<el-button type="text" @click="deleteRow(scope.$index)">删除</el-button>
</template>
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
searchId: '',
tableData: [
{ sample_id: '001', feature0: 'value0', feature1: 'value1' },
{ sample_id: '002', feature0: 'value2', feature1: 'value3' },
{ sample_id: '003', feature0: 'value4', feature1: 'value5' }
]
}
},
computed: {
filteredData() {
if (this.searchId.trim() === '') {
return this.tableData;
} else {
return this.tableData.filter(item => {
return item.sample_id.includes(this.searchId);
});
}
}
},
methods: {
search() {
// 在这里实现查询逻辑
// 可以根据 sample_id 进行过滤
},
handleEdit(index) {
// 处理编辑操作
},
deleteRow(index) {
// 处理删除操作
},
handleSelectionChange(val) {
// 处理表格选中项变化
}
}
}
</script>
```
在这个示例中,我们将原有的 `filteredData` 计算属性修改为根据 `searchId` 进行过滤的结果集。如果 `searchId` 为空,则返回完整的 `tableData`;否则,使用 `filter` 方法过滤 `tableData`,只返回 `sample_id` 包含 `searchId` 的项。这样,每当用户输入搜索关键字时,表格会动态显示符合条件的数据。
注意:这里的数据是模拟数据,你需要根据实际情况进行调整和替换。
希望这对你有帮助!如果有任何问题,请随时提问。
阅读全文