我會用代碼解釋我的情況。jQuery:如何在多個SELECT元素中預先加載一個OPTION,如果它已經不在那裏?
HTML:
<div class="list1">
<select class="select250">
<option class="temp" selected="selected" name="filter[]">Select</option>
<option class="" value="George" name="filter[]">George</option>
<option class="" value="Ben" name="filter[]">Ben</option>
</select>
</div>
<div class="list2">
<select class="select251">
<option class="temp" selected="selected" name="filter[]">Select</option>
<option class="" value="Sarah" name="filter[]">Sarah</option>
<option class="" value="Alex" name="filter[]">Alex</option>
<option class="" value="Natalie" name="filter[]">Natalie</option>
</select>
</div>
<div class="list3">
<select class="select252">
<option class="temp" selected="selected" name="filter[]">Select</option>
<option class="" value="Mobile" name="filter[]">Mobile</option>
<option class="" value="Car" name="filter[]">Car</option>
<option class="" value="Computer" name="filter[]">Computer</option>
</select>
</div>
JS(這是PHP中使用):
<script type="text/javascript">
$('.select<?php echo $sid?>').change(function() {
$('.temp', this).remove(); // THIS IS FINE
if ($('option').siblings('.temp')) { }
else { $('select').prepend('<option name="filter[]" selected="selected" class="temp">Select</option>'); // THIS IS NOT WORKING
}
});
</script>
我想要做的是 - 只要選擇一個選項,它應該刪除 「選擇」 選項在該列表中但仍保持其他列表上的「選擇」選項。這部分似乎工作正常。接下來要做的是 - 當在另一個列表上選擇一個選項時,它應該在所有其他列表上選擇,除了它所在的列表之外。我試着爲它編寫一個代碼,就像你上面看到的那樣,但是不能移過去。如果有人能指引我朝着正確的方向發展,那會很棒。謝謝。
我不知道爲什麼,但我當我看到php和js被混合在一起時總是得到意志。 –