用vue2和element ui写一个弹出框 有一个下拉框 选项分别是每周和每天 选择每周之后 下方会出现一个竖排的多选框 当你选定了其中的值之后 下拉框后面会出现一个时间范围选择器 如果没被选择则不出现时间范围选择器 当选择每天的时候 会出现一个时间范围选择器
时间: 2024-03-02 22:48:13 浏览: 205
好的,我可以为您提供一份参考代码,您可以根据您的需求进行修改:
```
<>
<div>
<el-select v-model="selected" placeholder="请选择" @change="handleChange">
<el-option label="每周" value="week"></el-option>
<el-option label="每天" value="day"></el-option>
</el-select>
<div v-if="selected === 'week'">
<div v-for="(item, index) in weekData" :key="index">
<el-checkbox v-model="item.checked">{{ item.label }}</el-checkbox>
</div>
<el-date-picker v-if="timeRange" type="datetimerange" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</div>
<el-date-picker v-if="selected === 'day'" type="datetimerange" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</div>
</template>
<script>
export default {
data() {
return {
selected: '',
weekData: [
{
label: '星期一',
value: '1',
checked: false
},
{
label: '星期二',
value: '2',
checked: false
},
{
label: '星期三',
value: '3',
checked: false
},
{
label: '星期四',
value: '4',
checked: false
},
{
label: '星期五',
value: '5',
checked: false
},
{
label: '星期六',
value: '6',
checked: false
},
{
label: '星期日',
value: '7',
checked: false
}
],
timeRange: false
}
},
methods: {
handleChange() {
if (this.selected === 'week') {
this.timeRange = true
} else {
this.timeRange = false
}
}
}
}
</script>
```
这是一个基本的模板,包括了下拉框、多选框和时间范围选择器,并且满足了您的需求。
请注意,这只是一个参考代码,具体实现还需要根据您的具体需求进行修改。
阅读全文