首先画页面
用vue + element-ui可以实现
<td width=8% v-for="(Item, Index) in item.weekList" :key="Index">
<div v-else class="staff_item_input">
<el-select clearable v-model="Item.times" value-key="keyValue">
<el-option
v-for="(vItem, vIndex) in gettimes(Item.postcode)"
:key="vItem.keyValue"
:label="vItem.classes"
:value="vItem">
</el-option>
</el-select>
</div>
</td>
因为下拉框选择后保存的是个对象,所以得用el-select的 value-key 属性(作为 value 唯一标识的键名,绑定值为对象类型时必填)
el-select的 value-key 属性的值得和el-option的key属性名一样,并且值必须是唯一的字符串类型
如:value-key=“keyValue” 与 :key=“vItem.keyValue”
因为每一组要从总的List里拿出属于他的list,所以每次点击下面的下拉框就得重新去拿所以用js写了个方法
//班次循环遍历
gettimes(postcode){
let times = [];
//当当前postcode的值与总List中某一条的postcode的值相等时,拿出来push到list中
for(let i=0;i<this.times.length;i++){
if(this.times[i].postcode==postcode){
times.push(this.times[i])
}
}
return times;
},