試試這個,你不能有一個沒有其他:
Age from:
<select id="age_a" onchange="checkages_a()">
<option value="none"></option>
<?php
for($i = 17; $i <= 49; ++$i) {
echo "\t", '<option value="', $i, '">', $i, '</option>', "\n";
}
?>
</select>
to:
<select id="age_b" onchange="checkages_b()">
<option value="none"></option>
<?php
for($i = 18; $i <= 50; ++$i) {
echo "\t", '<option value="', $i, '">', $i, '</option>', "\n";
}
?>
</select>
版本A
<script type="text/javascript">
var age_a = document.getElementById("age_a");
var age_b = document.getElementById("age_b");
function checkages_a() {
var a = typeof(age_a.options[age_a.selectedIndex]) !== 'undefined' ? age_a.options[age_a.selectedIndex].value : 0;
var b = typeof(age_b.options[age_b.selectedIndex]) !== 'undefined' ? age_b.options[age_b.selectedIndex].value : 0;
if(b == 'none' || a > b)
age_b.selectedIndex = age_a.selectedIndex - 1;
}
function checkages_b() {
var a = typeof(age_a.options[age_a.selectedIndex]) !== 'undefined' ? age_a.options[age_a.selectedIndex].value : 0;
var b = typeof(age_b.options[age_b.selectedIndex]) !== 'undefined' ? age_b.options[age_b.selectedIndex].value : 0;
if(!b || b == 'none')
age_b.selectedIndex = age_a.selectedIndex - 1;
if(a == 'none' || b < a)
age_a.selectedIndex = age_b.selectedIndex + 1;
}
</script>
版本B
<script type="text/javascript">
var age_a = document.getElementById("age_a");
var age_b = document.getElementById("age_b");
function checkages_a() {
var a = typeof(age_a.options[age_a.selectedIndex]) !== 'undefined' ? age_a.options[age_a.selectedIndex].value : 0;
var b = typeof(age_b.options[age_b.selectedIndex]) !== 'undefined' ? age_b.options[age_b.selectedIndex].value : 0;
if(b == 'none' || a >= b)
age_b.selectedIndex = age_a.selectedIndex;
}
function checkages_b() {
var a = typeof(age_a.options[age_a.selectedIndex]) !== 'undefined' ? age_a.options[age_a.selectedIndex].value : 0;
var b = typeof(age_b.options[age_b.selectedIndex]) !== 'undefined' ? age_b.options[age_b.selectedIndex].value : 0;
if(!b || b == 'none')
age_b.selectedIndex = age_a.selectedIndex;
if(a == 'none' || b <= a)
age_a.selectedIndex = age_b.selectedIndex;
}
</script>
從可用性的角度來看,我只建議萎靡不振時,他們都被選中,並沒有任何意義,而不是禁用。禁用可防止用戶按任何順序更正它們。 – abluejelly
這不是[範圍滑塊]的完美例子嗎(http://demos.jquerymobile.com/1.3.0-rc.1/docs/demos/widgets/sliders/rangeslider.html)? – Miro