javascript - 在更改 isFocused 时验证停止光标移动
问题描述
创建了一个代码笔,当用户在第一个 v-autocomplete 中输入文本时,会出现第二个 v-autocomplete 的下拉菜单。我通过将 isFocused 更改为 true 来做到这一点。问题是光标移动到下一个 v-autocomplete。有没有办法停止这种或其他方式来显示第二个 v-autocomplete 的下拉菜单?
这是我的代码笔 https://codepen.io/aaronk488/pen/MWbKNOq?editors=1010
HTML
<div id="app">
<v-app>
<v-container >
<v-row >
<v-col cols="4" md="4">
<v-autocomplete
ref="autocomplete"
label="Autocomplete"
:items="components"
:search-input.sync="search"
hint="need to open menu on focus, just like click" persistent-hint
></v-autocomplete>
</v-col>
<v-col cols="4" md="4">
<v-autocomplete
ref="autocomplete2"
label="Autocomplete2"
:items="components2"
hint="need to open menu on focus, just like click this" persistent-hint
></v-autocomplete>
</v-col>
</v-row>
</v-container>
</v-app>
</div>
JS
new Vue({
el: "#app",
vuetify: new Vuetify(),
data: {
search: null,
components: [
'Autocompletes', 'Comboboxes', 'Forms', 'Inputs', 'Overflow Buttons', 'Selects', 'Selection Controls', 'Sliders', 'Textareas', 'Text Fields',
],
components2: [
'Autocompletes2', 'Comboboxes2', 'Forms2', 'Inputs2', 'Overflow Buttons2', 'Selects2', 'Selection Controls2', 'Sliders2', 'Textareas2', 'Text Fields2',
],
},
watch: {
search(){
this.$refs.autocomplete2.isMenuActive = true;
this.$refs.autocomplete2.isFocused = true;
}
},
})
解决方案
好吧,您可以使用一个自动完成和一个选择。
但是你去吧,将此代码设置为search(val)
方法。我想这就是你要寻找的。
this.$refs.autocomplete2.$refs.menu.isActive = true;
this.$refs.autocomplete2.blur();
推荐阅读
- python - 在 Python 应用程序中嵌入 Python 以编写脚本
- android - Jetpack Compose LazyColumn 以编程方式滚动到项目
- java - 如何在java中删除用户的输入?我不断将相同的结果复制到我的新文件中,并且它不会删除输入
- python - 如何让 Discord.py 为不同的用户创建不同的存档游戏
- python - 在python 3中使用字典计算列表中的字符串
- wagtail - 鹡鸰不重定向。当 DEBUG = False 时出现 500 错误而不是 404
- asp.net-core - ApiAuthorizationDbContext 的自定义角色类
- python - 在 R-Markdown 中使用 python 时无法显示图表
- javascript - 更改动态颜色 - ExpressionChangedAfterItHasBeenCheckedError:表达式在检查后已更改
- node.js - NodeJs Redis(缓存)错误处理 - 如何忽略错误?