Debugging Firefox bug中的禁用选项

Debugging Firefox bug中的禁用选项,debugging,firefox,cross-browser,Debugging,Firefox,Cross Browser,当我在Firefox中看到它时,我正在创建一些表单。在选择框中,如果添加禁用选项作为第一选择。。。选择下一个可用选项 <option disabled="disabled" value="false">Choose option</option> <option value="1">Value 1</option> 选择选项 值1 加载页面时,它将选择“值1” 为什么每个浏览器都会默认选择禁用的浏览器而不是Firefox 在Firefox中加载

当我在Firefox中看到它时,我正在创建一些表单。在选择框中,如果添加禁用选项作为第一选择。。。选择下一个可用选项

<option disabled="disabled" value="false">Choose option</option>
<option value="1">Value 1</option>
选择选项
值1
加载页面时,它将选择“值1”

为什么每个浏览器都会默认选择禁用的浏览器而不是Firefox

在Firefox中加载此文件:


和其他浏览器,您会注意到Firefox会绕过禁用的浏览器,并默认选择“值1”。

如果您需要解决方法,请在DOM加载(或正文加载)上运行此代码以在Firefox中修复它

document.getElementById("mySel").selectedIndex = 0;


不确定这是否可以称为bug(更像是一种行为风格),如果您仔细想想,FF不允许您选择禁用的项目。其他浏览器(IE除外)也没有,但它们选择在初始加载时表现不同。

如果需要不可选择的选项,可以使用optgroup,或者只使用该值进行表单验证

如果您想要的只是禁用的样式,那么可以为该选项提供一个类,并使用css对其进行更改


我认为ff的行为是正确的,禁用的选项不应该是有效的选项。你可以在mozilla中将其作为bug归档

有趣的是,我从未注意到这一点!是的,它弄乱了我的ajax表单,因为它认为总是有一个选择的值!!Firefox曾经是一款优秀的开发者浏览器,但现在。。。我不知道他们在想什么。100%同意你。现在Firebug开发主管已经加入谷歌,我想Chrome很快就会超越它(我更喜欢FB,而不是Chrome的开发工具,但他们正在追赶!)。我接受这个答案只是因为这是一个解决办法,如果有人能找到Firefox想开始这件蠢事的原因,请让我知道:数据所选和禁用的属性不是互斥的,因此一个更简单的解决方法就是首先编写
Choose option
。最初将选择“选择选项”条目,用户将无法在下拉框中单击它。然而,即使用户从未触摸过下拉列表,Firefox仍然会报告第一个未禁用的选项在DOM中被“选中”,即使视觉上不是这样。