У меня есть элемент select с несколькими группами opt, где параметры в разных optgroups могут иметь одинаковое значение. Например (см «Яблоко» и варианты «картофельные»):select2 - неверная выбранная опция возвращается, если несколько опций имеют значение
<select data-placeholder="Fruit/Veg" id="food_select">
<option value=""></option>
<optgroup label="Fruits">
<option data-params="{'selected_type':'Fruit'}" value="1">Apple</option>
<option data-params="{'selected_type':'Fruit'}" value="2">Pear</option>
<option data-params="{'selected_type':'Fruit'}" value="3">Banana</option>
</optgroup>
<optgroup label="Veg">
<option data-params="{'selected_type':'Veg'}" value="1">Potato</option>
<option data-params="{'selected_type':'Veg'}" value="4">Cabbage</option>
<option data-params="{'selected_type':'Veg'}" value="5">Bean</option>
</optgroup>
</select>
С равниной выбрать, пытаясь найти выбранный вариант с JQuery дает правильный результат. $('#food_select').find(:selected)
Однако, когда Select2 применяется, и выбран «Картофельный», $('#food_select').find(:selected)
возвращает опцию «Apple», который является первым вариантом со значением «1».
Все остальные выбранные параметры работают правильно, поэтому кажется, что select2 неправильно обрабатывает повторяющиеся значения. Я создал JSFiddle, демонстрирующий это поведение, по адресу: http://jsfiddle.net/e57m9cax/.
Есть обходной путь или исправление для этого поведения?
Я мог бы разделить это на два отдельных элемента выбора, но скорее не по причинам UX. Любое направление будет оценено по достоинству.
Спасибо.
Старый вопрос .. для тех, кто ищет ответ - http://jsfiddle.net/e57m9cax/1/ – Fr0zenFyr