<form>
<select name="adi">
<option value="mehmet" class="mehmet">Mehmet</option>
<option value="kilimci" class="kilimci">Kilimci</option>
<option value="ahmet" class="ahmet">Ahmet</option>
</select>
<select name="adi">
<option value="mehmet" class="mehmet">Mehmet</option>
<option value="kilimci" class="kilimci">Kilimci</option>
<option value="ahmet" class="ahmet">Ahmet</option>
</select>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$('select').change(function() {
var value = $(this).val();
$(this).siblings('select').children('option').each(function() {
if ( $(this).val() === value ) {
$(this).attr('disabled', true).siblings().removeAttr('disabled');
}
});
});
</script>Saygılar.
Çok çok teşekkür ediyorum, yardımda bulunan geliştiricileri görmek ne kadar güzel.
Verdiğiniz kodu denedim, fakat kararlı çalışmadığını fark ettim. Belki siz de test etmek istersiniz;
http://jsfiddle.net/6buh7q2p/
Özellikle 2. ve 3. seçim'den sonra sapıtmaya başlıyor
Benzer bir örneği aşağıdaki adreste de buldum, aynı sorun orda da mevcut
http://stackoverflow.com/questions/4...n-other-select
Aşağıdaki kod ile sorunu çözmüş buluyorum, ihtiyacı olan kişilerin de yararlanması için
$(document).ready(function () {
$("select").change(function () {
var $this = $(this);
var prevVal = $this.data("prev");
var otherSelects = $("select").not(this);
otherSelects.find("option[value=" + $(this).val() + "]").attr('disabled', true);
if (prevVal) {
otherSelects.find("option[value=" + prevVal + "]").attr('disabled', false);
}
$this.data("prev", $this.val());
});
});