Wie kann ich ein Attribut eines <option>
in meinem zweiten <select>
ändern, wenn der gleiche Wert in der ersten <select>
ausgewählt wurde?Select2 Änderung attr in Sekunde wählen
Genauer gesagt: Wenn ich eine Option in meinem ersten <select>
auswählen, sollte die gleiche Option in der zweiten <select>
deaktiviert werden.
$("body").on("select2:select", "#first", function(e) {
var cur_id = e.params.data.id;
$("#second").children("option[value=" + cur_id + "]").attr("disabled", "disabled");
$("#second").trigger('refresh');
$("#first").trigger('refresh');
});
$("body").on("select2:select", "#second", function(e) {
var cur_id = e.params.data.id;
$("#first").children("option[value=" + cur_id + "]").attr("disabled", "disabled");
$("#second").trigger('refresh');
$("#first").trigger('refresh');
});
<body>
<select id="first" name="first">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<select id="second" name="second">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</body>
Nein, dieser Wert muss deaktiviert, aber nicht ausgewählt sein. – user4301988