select元素中可点击选项的最大数量似乎有限制。
如果有一个包含3200+选项的select元素。从3125到N的项目在单击时不会触发更改事件。但是,可以使用键盘选择项目。
知道这是IE8的错误还是功能?在IE6,IE7,FF或Chrome中没有这样的问题。
以下是一个例子:
<html>
<head>
<title>Large select</title>
<script>
function loadData()
{
var s=document.getElementById('s');
for(i=0;i<3500;i++)
s.options[i]=new Option(i);
}
</script>
</head>
<body onload="loadData()">
<select id="s" multiple="multiple" size="20" onchange="alert('change')"></select>
</body>
</html>
更新:我在ie8 beta(8.0.7000.0)中尝试了这个。它似乎在ie8 final
中完美运行答案 0 :(得分:5)
......中没有这样的问题。
问题?我是唯一一个害怕你正在创造的野兽的SO用户吗?
出于好奇,为什么你有这么多的选择呢?
编辑:不要误解我的意思,了解事物的上限是很有趣的。但是现在我已经看到这个现在可以在IE8决赛中使用了,我的下一个网站将在我使用的任何<options>
中至少有6000 <select>
!
摇滚!
答案 1 :(得分:2)
这是你应该从不命中的另一个限制。就像数据库表中的最大列数一样。甚至询问限制是什么意味着设计中存在一个可怕的缺陷。