为了账号安全,请及时绑定邮箱和手机立即绑定

element-ui的el-radio怎么在已选中的情况下,再次点击取消选中

element-ui的el-radio怎么在已选中的情况下,再次点击取消选中

海绵宝宝撒 2019-03-22 18:14:29
element-ui的el-radio怎么在已选中的情况下,再次点击取消选中?<template>   <el-radio-group v-model="radio2" @change="onRadioChange">     <el-radio :label="3">备选项</el-radio>     <el-radio :label="6">备选项</el-radio>     <el-radio :label="9">备选项</el-radio>   </el-radio-group></template><script>   export default {     data () {      return {        radio2: 3       };     },    methods:{         onRadioChange(val){            console.log(val) // 当radio已被选中时,这个事件不会被触发         }     }   }</script>点击事件?直接用@click无效,我用@click.native可以点击但是会执行两次
查看完整描述

6 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

为啥不用 el-checkbox 呢


<el-checkbox-group v-model="checkList" :max="1">

    <el-checkbox label="选项 A"></el-checkbox>

    <el-checkbox label="选项 B"></el-checkbox>

    <el-checkbox label="选项 C"></el-checkbox>

</el-checkbox-group>


data () {

    return {

        checkList: ['选项A']

    }

}


或者这样:

<el-radio-group v-model="radio2">

  <el-radio @click.native.prevent="clickitem(3)" :label="3"> 备选项</el-radio>

  <el-radio @click.native.prevent="clickitem(6)" :label="6"> 备选项</el-radio>

  <el-radio @click.native.prevent="clickitem(9)" :label="9"> 备选项</el-radio>

</el-radio-group>

          

clickitem (e) {

  e === this.radio2 ? this.radio2 = '' : this.radio2 = e

},


查看完整回答
反对 回复 2019-04-07
?
MYYA

TA贡献1868条经验 获得超4个赞

onRadioChange(val){

    if(val === this.radio){

        this.radio = 0

    }

}

其中this.radio = x 中的x 不能等于所有子项的值


查看完整回答
反对 回复 2019-04-07
?
元芳怎么了

TA贡献1798条经验 获得超7个赞

单选按钮建议用radio 多选用checkbox checkbox用数组存值


查看完整回答
反对 回复 2019-04-07
?
Helenr

TA贡献1780条经验 获得超4个赞

楼主如果是UE叫你这样做的,建议他回炉再造下..
radiobutton没有这样的交互方式,这样做有违用户的常识体验(想想你在其他应用见过这样的交互方式没..)。

如果你要实现点击后取消,可以实现一组互斥的checkbox,点击其中一个取消其他的选中状态,再次点击取消自己的选中状态。


查看完整回答
反对 回复 2019-04-07
  • weixin_慕沐5343492
    weixin_慕沐5343492
    有这时间bb ll,说些废话你很爽? <el-radio :label="1" @click.native.prevent="radioClick(1)">备选项</el-radio> radioClick (e) { e === this.radio? (this.radio = ''):(this.radio = e) }
  • 6 回答
  • 0 关注
  • 7771 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信