因此,我编写了一些代码来对我网站的所有选择菜单进行排序,并且它在我们支持的所有浏览器中都能完美运行……除了 Firefox。
我的代码接受选择元素的选项,对它们进行排序并返回它们。在那里的某个地方,选择元素上的 selectedIndex 更改为最后一项。
我检查选择了哪些值/defaultSelected:
for(k=0; k<options.length; k++)
{
if(options[k].defaultSelected == true)
{
sel = k;
break;
}
}
if(sel === null)
{
for(k=0; k<options.length; k++)
{
if(options[k].selected == true)
{
sel = k;
break;
}
}
}
if(sel === null)
{ options[0].selected = true; }
else
{ options[sel].selected = true; }
但是我不能从这个函数中设置 selectedIndex 因为我没有传入整个选择对象,只是选项列表。
我尝试查找类似的问题,但我看到的每个其他线程都说这是一个缓存问题,或者我需要添加 autocomplete="off",但这些都不起作用。我认为它与我的代码有关,但我没有在任何地方修改 selectedIndex 属性。
有什么建议么?我正在失去理智(而且时间不多了!)