el-select实现鼠标悬浮在下拉选项上显示该项的其他信息

使用 @mouseover.native 实现鼠标悬浮在下拉选项上显示该项的地址信息

<el-select v-model="value" filterable placeholder="请选择">
    <el-option 
        v-for="item in options"
        :key="item.id"
        :label="item.name"
        :value="item.id"
        @mouseover.native="showAddress(item.id,item.address)"
    >
        <span>{{item.name}}</span>
        <span v-show="addressId === item.id" style="margin-left:20px;">{{address}}</span>
    </el-option>
</el-select>
data() {
    return {
        addressId: '',
        addressName: ''
    }
}
methods: {
    showAddress(id,val) {
        this.addressId = id
        this.addressName = val
    }
}
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
实现拖拽下拉选项重新排序,可以使用 Element UI 自带的拖拽指令 el-draggable 和拖拽事件 dragstart、dragover、drop 和 dragend。以下是一个示例代码: ```html <template> <div> <el-select v-model="selectedOption" placeholder="请选择"> <el-option v-for="(option, index) in options" :key="index" :label="option.label" :value="option.value" v-el-draggable="{ group: 'options', onDragstart: handleDragstart, onDrop: handleDrop }" ></el-option> </el-select> </div> </template> <script> export default { data() { return { selectedOption: '', options: [ { label: '选项1', value: 'option1' }, { label: '选项2', value: 'option2' }, { label: '选项3', value: 'option3' }, { label: '选项4', value: 'option4' } ] } }, methods: { handleDragstart(e) { const index = e.target.dataset.index e.dataTransfer.setData('text/plain', index) e.dataTransfer.effectAllowed = 'move' }, handleDrop(e) { e.preventDefault() const targetIndex = e.target.dataset.index const sourceIndex = e.dataTransfer.getData('text/plain') if (targetIndex !== sourceIndex) { const sourceOption = this.options[sourceIndex] this.options.splice(sourceIndex, 1) this.options.splice(targetIndex, 0, sourceOption) } } } } </script> ``` 在这个实现中,我们使用了 el-draggable 指令将 el-option 元素设置为可拖拽,并指定了一个名为 options 的组。当用户开始拖拽一个选项时,会触发 dragstart 事件,我们在 handleDragstart 方法中将选项的索引设置为数据传输的 plain 文本数据。当用户将一个选项拖放到另一个选项上时,会触发 drop 事件,我们在 handleDrop 方法中获取目标选项的索引,并在选项数组中重新排列选项的顺序。最后,我们使用 preventDefault 方法来防止浏览器默认行为。 注意,这个示例代码中没有提供拖拽时的视觉反馈。如果您需要更好的用户体验,您可以添加一些 CSS 样式来指示用户正在拖拽的选项

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Komorebi゛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值