如果禁用选项,则多个下拉菜单会导致FIREFOX出现问题

假设我们在页面上有2个下拉菜单

    <div>1st dropdown</div>
    <select id="1" class="DROPDOWN">
     <option>1</option>
     <option>2</option>
    </select>
    <div>2nd dropdown</div>

    <select id="2" class="DROPDOWN">
     <option>3</option>
     <option>4</option>
    </select>

    <div id="aj" value=""></div>

现在我已经写了一个JavaScript代码,当任何这些下拉列表发生更改时,它将禁用选定的选项标记。

     $(document).on('change', '.DROPDOWN', function (event) {
       var value = $(this).val();
       $(this).find(":selected").attr('disabled','disabled');
       $("#aj").html(value);
     });

现在Firefox中有一个典型的问题,不幸的是在其他任何浏览器中都没有这个问题。

第1步 - 从第1个下拉列表中选择第2个选项。 紧接着完成后,div将填充值2。

第2步 - 现在再次单击第1个下拉列表,我可以看到第2个选项被禁用,只有选项1被允许选择。 将鼠标悬停在第一个选项上,但不要点击它。 现在,如果我点击页面外部某处以折叠第一个SELECT标记,然后单击第二个下拉列表以展开它,则会触发第一个下拉列表的更改事件,并且div现在显示1而不是2。

发生这种情况是因为Firefox 2禁用后,无法将注意力集中在选项2上,并且不幸地触发了第1次下拉最后一次悬停值的更改。

任何解决方法,如果可以建议将有所帮助。 这是我的JSfiddle相同。 请在Firefox中打开小提琴来查看问题。 http://jsfiddle.net/achyut/ybu6ovs5/7/


这个问题发生在Firefox 31 for Linux中。 将我的Firefox升级到36后,此问题得到解决。 似乎Firefox已经解决了这个问题之间的某个地方。

链接地址: http://www.djcxy.com/p/49651.html

上一篇: Multiple Dropdowns causes issue on FIREFOX if options are disabled

下一篇: Firefox selectedIndex on select changes on hover