首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何以编程方式聚焦v- radio -group选定的电台?

如何以编程方式聚焦v- radio -group选定的电台?
EN

Stack Overflow用户
提问于 2018-12-11 05:52:23
回答 2查看 955关注 0票数 1

如何以编程方式聚焦v- radio -group选定的电台?

代码语言:javascript
运行
复制
<v-radio-group v-model="radios" :mandatory="false" ref="RadioGroup">
  <v-radio label="Radio 1" value="radio-1"></v-radio>
  <v-radio label="Radio 2" value="radio-2"></v-radio>
</v-radio-group>

我尝试使用this.$refs.RadioGroup.focus(),但什么也没有发生。提前谢谢你

EN

回答 2

Stack Overflow用户

发布于 2018-12-11 08:23:53

两件事

  • Vuetify将div和输入添加到DOM中,因此您需要深入研究被引用元素的子元素。
  • 您可能希望针对某个单选按钮,因为将组作为焦点似乎没有任何效果

这是可行的,所以可能会给你一个可以使用的想法。

代码语言:javascript
运行
复制
<v-radio-group v-model="radios" :mandatory="false" ref="RadioGroup">
  <v-radio label="Radio 1" value="radio-1" ref="Radio1"></v-radio>
  <v-radio label="Radio 2" value="radio-2" ref="Radio2"></v-radio>
</v-radio-group>
代码语言:javascript
运行
复制
this.$refs.Radio2[0].$el.children[0].children[0].focus()

使用此监听器进行了测试

代码语言:javascript
运行
复制
created() {
  document.addEventListener('focusin', event => {
    console.log('focused', event.target)
  })
},
票数 2
EN

Stack Overflow用户

发布于 2018-12-16 04:24:04

尝试使用custom directive。将'radio- focus‘作为指令添加到Vue实例中,将v-radio-focus指令作为属性添加到您希望关注的v-radio元素中。有关指令here的更多信息。

代码语言:javascript
运行
复制
 'radio-focus': {
      // directive definition
      inserted: function (el) {
          const $el: HTMLElement = el.children[0].children[0] as HTMLElement
          $el.focus()
        }
      }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53714208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档