iOS Safari中的错误选择了optgroup元素

时间:2015-04-02 11:52:32

标签: javascript html ios safari

今天我们在使用optgroups的select元素上进行onchange时,在iOS 8.2 Safari中发现了一个奇怪的错误。 Codepen:http://codepen.io/anon/pen/xbeWXO

奇怪的是,当您在optgroup中有一个选定的选项并且您关注select元素时,它会直接触发onchange。它做什么,它选择所选的前面的选项。

实施例:

<select id="id_test" onchange="alert('WHY?!')">
  <optgroup label="First">
    <option value="1">Test 1</option>
  </optgroup>
  <optgroup label="Other">
    <option value="2">Test 2</option>
    <option value="3" selected>Test 3</option>
  </optgroup>
</select>

现在,当您关注此选择元素时,它会直接警告“为什么?”,这是因为出于某种原因它选择了“测试2”选项。当您再次对焦时,它将选择“测试1”。

是否有某种方法(除了不使用optgroup)解决这种奇怪的行为?

0 个答案:

没有答案