用户键入暂停时,ASP.NET DropDown列表位置丢失

时间:2012-07-09 21:31:13

标签: asp.net drop-down-menu position

我的一个最终用户刚刚报告了ASP.NET 2.0应用程序中的一个奇怪的问题,我已经确认了,但这对我来说似乎很奇怪。我的Web表单上有一个DropDownList控件,它显示了几十个不同的项目。他们导航列表的最简单方法是键入要选择的项目的前几个字母。没问题,我们都熟悉这种方法。

问题出现在他们暂停打字,等待一秒左右(例如查询序列号的文档),然后继续键入目标选择的下一个字母。一旦他们恢复键入,他们在列表中的位置就会被忽略,并且光标会移动到以他们键入的新字符序列开头的值。例如,如果他们试图选择值“ PREAMBLE“,他们键入字母PRE,突出显示包含”PRE“的第一个项目。但是,如果他们暂停片刻,然后继续“AMBL”,列表会跳回到开头,并突出显示包含“AMBL”的第一个列表项。由于用户在其中一个下拉列表中输入序列号,这种暂停的习惯是完全自然的,但它也会让他们感到沮丧,因为他们必须输入更长的字符串而不会停止。

我已经在Chrome和Internet Explorer以及Firefox上对此进行了测试,因此我认为它不是特定于浏览器的。是否有时间参数我可以在下拉列表中调整,以允许更长的暂停?有没有办法禁用我在这里描述的行为?我可以在列表中复制少至七个项目的行为。在七个项目的列表中,这不是问题,但在包含一百个项目的列表中,这将是一个麻烦。

对此的任何见解都是最值得欣赏的,关于如何避免它发生的任何建议,尤其是如果我可以通过控制基础在控件上禁用它。提前谢谢!

1 个答案:

答案 0 :(得分:1)

您所见证的是任何下拉列表的正常行为。
直到你继续输入它作为一个自动完成..但是一旦你停止它开始再次搜索它包含的项目列表

如果你想保持当前的状态...然后寻找像Jquery AutoComplete现在here这样的解决方案,它将保持状态,并将对所有输入问题的字符给予应有的重视面对它是它应用在文本框上,但随后用户可以更容易地输入并同时查找提示