el-checkbox禁用部分
时间: 2023-10-06 11:04:44 浏览: 200
您可以使用`disabled`属性将el-checkbox设置为禁用状态。如果您想禁用部分复选框,可以使用`disabled`属性与`v-for`指令结合使用来动态生成复选框,并根据需要设置禁用状态。
以下是一个示例代码:
```html
<template>
<div>
<el-checkbox v-model="allChecked" @change="handleCheckAll">{{allText}}</el-checkbox>
<el-checkbox-group v-model="checkedCities">
<el-checkbox v-for="(city, index) in cities" :key="index" :label="city.name" :disabled="city.disabled">{{city.name}}</el-checkbox>
</el-checkbox-group>
</div>
</template>
<script>
export default {
data() {
return {
allChecked: false,
checkedCities: [],
cities: [
{ name: 'New York', disabled: false },
{ name: 'Los Angeles', disabled: true },
{ name: 'Chicago', disabled: false },
{ name: 'Houston', disabled: true },
{ name: 'Philadelphia', disabled: false },
],
}
},
computed: {
allText() {
return this.allChecked ? 'Uncheck All' : 'Check All'
},
},
methods: {
handleCheckAll(value) {
this.checkedCities = value ? this.cities.filter(city => !city.disabled).map(city => city.name) : []
},
},
}
</script>
```
在上面的示例中,我们使用了一个`cities`数组来存储城市名称和禁用状态。然后,我们使用`v-for`指令动态生成复选框,并将每个城市的名称用作标签,将每个城市的禁用状态用作`disabled`属性。最后,我们使用`handleCheckAll`方法来处理“全部选中”复选框的更改事件,并使用`filter`方法过滤出未禁用的城市,然后将它们的名称用作选中的城市列表。
阅读全文