嗨,我知道这不是一个好主意,但由于一个用例,我填充了一个包含更多10000项的组合框。它在IE7中在所有其他浏览器中表现得很好,它在IE7中运行良好,下载页面花费了太多时间。有时IE7也会挂起
IE7是否存在此问题的已知错误。
谢谢, 阿米特
答案 0 :(得分:3)
不确定是否可以采取任何措施加快速度。要研究的一件事是通过Ajax动态加载选项,并将它们作为DOM节点添加到现有的select元素中。这至少会在获取其余数据之前加载整个页面。
还有现成的基于JS / jQuery的Ajax组合框。具有良好加载策略的一个可能会产生更好的结果。
我没有经验,所以我不知道哪一个适合你,但这些看起来值得一试:
答案 1 :(得分:0)
我建议放弃任何在单个选择框中拥有10k条目的尝试 - 正如其他人所说的那样,这是一个用户界面的噩梦,即使你可以解决它杀死浏览器的问题(我不认为你可以)。
该怎么做?
将选择分为几类。然后为该类别添加一个<select>
框,并根据所选类别填充第二个<select>
。第二个<select>
可以通过Ajax或页面重新加载来填充;这两种技术都很常见。鉴于您想要提供的选项数量,您甚至可能希望将其分解为类别和子类别。
另一种选择(考虑到您提供的选项数量可能更好)是实现Google风格的自动完成。有许多易于使用的Javascript和JQuery脚本,允许您实现这类事情,而无需从头开始编写 - 它几乎与编写选择框一样简单。
这是一个让你尝试的:http://docs.jquery.com/Plugins/autocomplete(但如果你谷歌,还有很多其他人)
希望有所帮助。