|
@@ -828,7 +828,8 @@ S2.define('select2/results',[
|
|
|
// id needs to be converted to a string when comparing
|
|
|
var id = '' + item.id;
|
|
|
|
|
|
- if ($.inArray(id, selectedIds) > -1) {
|
|
|
+ if (item.selected ||
|
|
|
+ (item.selected == null && $.inArray(id, selectedIds) > -1)) {
|
|
|
$option.attr('aria-selected', 'true');
|
|
|
} else {
|
|
|
$option.attr('aria-selected', 'false');
|
|
@@ -2865,7 +2866,9 @@ S2.define('select2/data/select',[
|
|
|
SelectAdapter.prototype.select = function (data) {
|
|
|
var self = this;
|
|
|
|
|
|
- // If data.element is a DOM nose, use it instead
|
|
|
+ data.selected = true;
|
|
|
+
|
|
|
+ // If data.element is a DOM node, use it instead
|
|
|
if ($(data.element).is('option')) {
|
|
|
data.element.selected = true;
|
|
|
|
|
@@ -2907,6 +2910,8 @@ S2.define('select2/data/select',[
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+ data.selected = false;
|
|
|
+
|
|
|
if ($(data.element).is('option')) {
|
|
|
data.element.selected = false;
|
|
|
|