Vue checkbox事件 方法中如何获取选中值?

clipboard.png

如题, vue checkbox 官方实例:

在selectNames方法中,选中 某个checkbox时,this.checkedNames为空,
取消选中,则this.checkedNames有值,请问这个该如何处理? 因为正好相反了

阅读 55.3k
4 个回答

贴上最后实现的方法,仅供参考!

clipboard.png

clipboard.png

后记: 看到vue作者尤大神在issue回复中有提到这个问题,
附上他的解决办法:http://jsfiddle.net/yyx990803/5sH6A/310/

同时发现这个问题,并不是所有的浏览器都是如此,只存在于高版本的Chrome 49和Firefox 41 以上。

我比较偷懒,使用的是setTimeout.

selectName: function(){
    var self = this;
    setTimeout(function(){
        alert(self.checkedNames)
    },0)
}

效果达到了,这个问题形成的原因是当点击checkbox时,先触发click事件。打印数据,然后,才把checbox的value值传给model,也就是传入checkedNames中。
使用setTimeout是用伪异步的方式去执行这段代码

参考代码:
问题描述表现 https://jsfiddle.net/g1v20upr...
解决方法示例 https://jsfiddle.net/g1v20upr...

新手上路,请多包涵
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏