我正在将旧的客户端/服务器应用程序转换为基于浏览器的 web 应用程序,并且标准HTML SELECT元素存在问题。此应用程序的用户输入搜索词/运算符对以构建对大型数据库的搜索(请参阅下面的示例标记)。
<input type="text" id="txtTerm1" />
<select id="selOp1">
<option value=""></option>
<option value="or">Or</option>
<option value="near">Near (any)</option>
<option value="near2">Near (within 2 words)</option>
<option value="near4">Near (within 4 words)</option>
<option value="before">Before (any distance)</option>
<option value="before2">Before (within 2 words)</option>
<option value="before4">Before (within 4 words)</option>
</select>
在txtTerm1中输入搜索词,然后按TAB或ENTER移动到selOp1。用户喜欢使用键盘专门从selOp1中选择一个操作符。当他们快速按下&#34; n&#34;时,选择控件将遍历&#34; near&#34;选项完美。但是如果用户然后决定他们想要切换到&#34;或者&#34;和类型&#34; o,&#34;控件不会选择&#34;或&#34;选项。
测试:快速连续输入n,n,n,n,n,o
似乎如果你快速键入然后更改字符,SELECT元素将两个字符组合在一起,&#34; no&#34;在这种情况下,并没有找到带有该文本的OPTION。如果我在键入n&#39; s后等待几秒钟然后按o,则可以正常工作。但这会减慢用户的速度,令人困惑。在Chrome,Firefox和IE中,此行为似乎相同。
问题:
在尝试使用键盘定位OPTION时,是否有办法强制SELECT仅使用OPTION文本的第一个字符?或者有没有人有任何其他聪明的解决方案?非常感谢任何建议。