vue2.0+Element-ui+select怎么显示图片?

发布于 2022-09-05 09:01:32 字数 1080 浏览 31 评论 0

想让select选中的图片显示?

效果
clipboard.png

HTML代码
<el-form-item label="头像:">
  <el-select v-model="registerForm.avatar" placeholder="请选择头像">
    <el-option
      v-for="avatar in avatars"
      :key="avatar.Id"
      :label="avatar.src"
      :value="avatar.Id"
    >
      <img class="avatar" :src="avatar.src" style="height:36px">
    </el-option>
  </el-select>
</el-form-item>

数据
avatars: [
          {
            src:"/static/img/img.jpg",
            Id:'0',
          },
          {
            src:"/static/img/img2.jpg",
            Id:'1',
          },
          {
            src:"/static/img/img3.jpg",
            Id:'2',
          },
          {
            src:"/static/img/img4.jpg",
            Id:'3',
          },
          {
            src:"/static/img/img5.jpg",
            Id:'4',
          },
        ],

很明显选择后显示的是选中图片的src,怎么让图片显示在里边呢?
求大神带!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

咿呀咿呀哟 2022-09-12 09:01:32

我这边是实现出来了,但是是拼出来的,

<el-form>

    <el-form-item label="头像:">
     <el-select  v-model="registerForm"  placeholder="请选择头像" @change="changeSelection" ref="select">
       <el-option
        v-for="avatar in avatars"
        :key="avatar.Id"
        :label="avatar.src"
        :value="avatar.Id"
      >
        <img class="avatar" :src="avatar.src" style="height:36px">
      </el-option>
    </el-select>
   </el-form-item>
  </el-form>
  
  methods:{
       changeSelection(){

let path=this.$refs.select.selectedLabel
this.$refs.select.$el.children[0].children[1].setAttribute('style','background:url('+ path +') no-repeat;color:#fff');

},
  
  }
所谓喜欢 2022-09-12 09:01:32

好蛋疼的需求。

能想到简单点的方法是把下图中的红框部分,动态删掉,换成img的标签。

clipboard.png


补充一下,input里面放不了别的标签,只能模拟input的样子。

所以思路是在原来的select中,修改input元素样式,并动态添加img标签。

图中element-ui的这个效果就是酱紫。

不正之处请谅解并指出。谢谢。

-残月青衣踏尘吟 2022-09-12 09:01:32

他本质还是input,不能直接显示图片

你可以把el-select设置透明,在底下写一层img用来预览你选择的图片。

甜味拾荒者 2022-09-12 09:01:32

https://www.jianshu.com/p/4a8...
这里的文章中有#### 在Select 组件头部插入内容 这个建议试一下

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文