Ich habe eine Liste, die vom Typ select2 ist.Select2 Deaktivieren/Aktivieren der spezifischen Option
<select id="list" class="form-control select2 select2-hidden-accessible" tabindex="-1" aria-hidden="true">
<optgroup label="Types">
<option value="None">None</option>
<option value="1">One</option>
<option value="2">Two</option>
</optgroup>
</select>
Ich möchte Option deaktivieren, die Wert wird mit = 1 so tat ich wie dieses
$("#list>optgroup>option[value='1']").prop('disabled',true);
Result:// <option value="1" disabled>One</option>
Es ist in Ordnung arbeiten, aber wenn ich will wieder aktivieren i deaktiviert Option versucht unter den Codes, aber die Option select2 ist deaktiviert.
$("#list>optgroup>option[value='1']").prop('disabled',false);
$("#list>optgroup>option[value='1']").removeProp('disabled');
Result:// <option value="1">One</option>
aber seltsam ist deaktiviert Eigenschaft der Option ist entfernt.aber select2 Option bleibt deaktiviert.
Nicht erhalten, wie man das löst. Brauche Hilfe.
Update: Wenn ich DOM von select2 überprüfe, hat diese Eigenschaft auch nach dem Entfernen von disfinf deaktiviert.
<li class="select2-results__option" id="select2-template-type-list-result-4qd3-merge" role="treeitem" aria-disabled="true">One</li>
wenn ich machen Arie-disabled = "false" es ermöglichen wird. nicht in der Lage zu bekommen, was die Ursache ist.
Haben Sie versucht, '.select2 (...)' erneut auf dem Element aufzurufen, nachdem das deaktivierte Attribut geändert wurde? – CBroe
$ ("# list> optgroup> option [wert = '1']"). Prop ('deaktiviert', false); $ ("# list> optgroup> option [wert = '1']"). RemoveProp ('disabled'); $ ("# list"). Select2(); –
@CBroe das Problem mit der Re-Freigabe der Option. Funktion deaktivieren funktioniert ordnungsgemäß. Ich habe versucht, select2() aufzurufen. es funktioniert richtig. Aber ich bin nicht in der Lage zu bekommen, was ist das Problem in select2? –