Firefox忽略选项="已选中"

mon*_*nch 104 firefox refresh drop-down-menu

如果更改下拉列表并刷新页面,Firefox似乎会忽略所选属性.

<option selected="selected" value="Test">Test</option>
Run Code Online (Sandbox Code Playgroud)

它实际上会选择您之前选择的选项(在刷新之前).这最终成为我的问题,因为在下拉列表上触发了一个事件,这会改变其他事情.有没有办法使firefox停止此行为(除了在页面加载时触发另一个事件)?

Mar*_*aio 264

autocomplete="off"HTML属性添加到每个选择标记.(来源:https://stackoverflow.com/a/8258154/260080)

这修复了FireFox中的ODD行为.

  • 这肯定应该是正确的答案.奇迹般有效. (19认同)
  • 这是我的偏好(非常感谢Marco和猴子扳手,在那里保存了几块头发).而且你还必须将它添加到每个带有"value"或"checked"属性的<input>,以及带有内容的任何<textarea>. (7认同)
  • 在 Firefox Quantum 60.0.2 64 位中对我不起作用。/sf/answers/885564291/ 有效。 (2认同)
  • 我将 `autocomplete="off"` 直接添加到我的 &lt;form&gt; 标记中,而不是添加到表单中的每个字段,它工作得很好。 (2认同)

小智 65

在firefox中,我注意到除非将select放在表单中,否则"selected"属性将不起作用,其中表单具有name属性.

  • BAM!修正了autocomplete ="off"没有的地方. (3认同)

Abd*_*ani 9

刚刚遇到同样的问题,相信我这个愚蠢的firefox行为已经超过10个小时,我有7个下拉菜单,每个都会触发一个事件并填入24个隐藏的输入,所以你可以想象选择了正确的选项24错输入值!!! 我终于找到的解决方案是使用Javascript重置表单以添加以下代码:

window.onload = function() { document.forms['MarkerForm'].reset(); };
Run Code Online (Sandbox Code Playgroud)

PS:输入具有从数据库中提取的值,因此重置表单不会清空任何值,但在某种程度上告诉firefox将地狱返回到selected = selected选项!


Pek*_*ica 7

AFAIK,此行为已硬编码到 Firefox 中。

您可以尝试将每个表单元素设置为其defaultValue页面加载。

  • 仅供参考 - Marco Demaio 下面有一个更好的答案 (8认同)

ham*_*nan 6

这只是Firefox在刷新时记住您之前的选择.尝试硬刷新.

此外,同样的问题:https://stackoverflow.com/a/1505693/1069232

另见:https://bugzilla.mozilla.org/show_bug.cgi?id = 274795


Ara*_*ami 5

尝试禁用autocomplete选择输入的属性......有时浏览器会select因此忽略