vue + element select使用可创建条目,要达到相同id的两个下拉框都可以单独创建要怎么实现
select使用可创建条目,要达到相同id的两个下拉框都可以单独创建要怎么实现 或者当一个创建时弹出弹窗赋值另外一个
<el-table-column label="品名编码" width="150">
<template slot-scope="scope">
<el-select
v-show="scope.row.repertoryListId == currentSelectId"
v-model="scope.row.goodsId"
filterable
remote
allow-create
reserve-keyword
:remote-method="goodsSearch"
size="small"
@visible-change="goodsVisibleChange($event, scope.row)"
>
<el-option
v-for="item in goodsList"
:key="item.goodsId"
:label="item.goodsNo"
:value="item.goodsId"
/>
</el-select>
<span v-show="scope.row.repertoryListId != currentSelectId">{{
scope.row.goodsNo
}}</span>
</template>
</el-table-column>
<el-table-column label="品名" width="150">
<template slot-scope="scope">
<el-select
v-show="scope.row.repertoryListId == currentSelectId"
v-model="scope.row.goodsId"
filterable
remote
allow-create
reserve-keyword
:remote-method="goodsSearch"
size="small"
@visible-change="goodsVisibleChange($event, scope.row)"
>
<el-option
v-for="item in goodsList"
:key="item.goodsId"
:label="item.goodsName"
:value="item.goodsId"
/>
</el-select>
<span v-show="scope.row.repertoryListId != currentSelectId">{{
scope.row.goodsName
}}</span>
</template>
</el-table-column>
goodsVisibleChange (e, row) {
if (!e) {
if (row.goodsId) {
const _tmp = this.goodsList.find(x => x.goodsId === row.goodsId)
if (_tmp) {
// 表示不是创建则赋值goodsList对应的name 和 no
row.goodsName = _tmp.goodsName
row.goodsNo = _tmp.goodsNo
} else {
// 表示是创建则赋值创建的对应的name和no
// 这里不知道如何处理
row.goodsName = row.goodsId
}
}
}
},
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论