gpt4 book ai didi

javascript - Firefox 忽略所选选项,始终显示下拉列表中的最后一项

转载 作者:行者123 更新时间:2023-11-30 05:52:23 24 4
gpt4 key购买 nike

因此,我编写了一些代码来对我网站的所有选择菜单进行排序,它在我们支持的所有浏览器中都能完美运行……除了 Firefox。

http://jsfiddle.net/vkjAC/6/

我的代码接受一个选择元素的选项,对它们进行排序,然后返回它们。在某处,选择元素上的 selectedIndex 更改为最后一项。

我检查选择/默认选择的值:

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 属性。

有什么建议吗?我快疯了(而且时间不多了!)

最佳答案

我以前遇到过。它与选项被删除然后再次添加的事实有关。您必须在排序后重新选择值。例如:

var ops = $('#mass').find('option');
$('#mass').prepend(sortDropDown(ops)).val($("#mass > option[selected]").val());

关于javascript - Firefox 忽略所选选项,始终显示下拉列表中的最后一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13940946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com