在blazor组件中,焦点在输入文本中,如何使tab键将焦点移动到选项下拉列表?
我在输入框里输入了一些东西,选项范围缩小了。然后,按tab键,焦点跳过选项下拉列表。我想让它跳转到选项列表。我下面有一个样品。只能通过html属性完成吗?如果没有,我如何在blazor中完成 我知道上下键可以做到这一点。但我觉得tab键更快更直观在blazor组件中,焦点在输入文本中,如何使tab键将焦点移动到选项下拉列表?,blazor,Blazor,我在输入框里输入了一些东西,选项范围缩小了。然后,按tab键,焦点跳过选项下拉列表。我想让它跳转到选项列表。我下面有一个样品。只能通过html属性完成吗?如果没有,我如何在blazor中完成 我知道上下键可以做到这一点。但我觉得tab键更快更直观 <input type="text" @bind="@newStudyCode" list="studies" autocomplete="on" placeholder="Search ..." /> <datalist id="s
<input type="text" @bind="@newStudyCode" list="studies" autocomplete="on" placeholder="Search ..." />
<datalist id="studies">
@if (Studies != null)
{
@foreach (var study in Studies)
{
<option value="@study.Code">@study.Code - @study.Title</option>
}
}
</datalist>
@如果(研究!=null)
{
@foreach(研究中的var研究)
{
@study.Code-@study.Title
}
}
编译后的html如下所示
火狐
互联网
铬
游猎
推我
只需使用常规htmltabindex
属性即可完成此操作。布拉佐不需要什么特别的东西
例如:
<a href="https://www.w3schools.com/" tabindex="2">W3Schools</a>
<a href="http://www.google.com/" tabindex="1">Google</a>
<a href="http://www.microsoft.com/" tabindex="3">Microsoft</a>
请看这里:
正如凯尔刚才所说,您只需要tabindex
<input type="text" @bind="@newStudyCode" list="studies" autocomplete="on" placeholder="Search ..." />
<datalist id="studies">
@if (Studies != null)
{
var i =1;
@foreach (var study in Studies)
{
<option value="@study.Code" tabindex="@i">
@study.Code - @study.Title
</option
i++;
}
}
</datalist>
@如果(研究!=null)
{
var i=1;
@foreach(研究中的var研究)
{
@study.Code-@study.Title
这不起作用,请看这里。哦,对不起。我误解了你的问题。你想通过选项列表进行制表吗?对我来说,这不是直观的,但我认为这应该是可能的。我认为你唯一的选择是将javascript与JsInterop一起使用,并捕获制表键和按on键检查当前打开的输入,然后转到下一个o我希望焦点像输入文本一样移动--(制表符)-->选项下拉菜单--(制表符)-->按钮。但我想你是对的,我必须求助于JS。这不起作用,请看这里