input
1 つの値が 4 未満の場合、フィールドに入力したスクリプトに問題があります。値が 4 未満の場合、スクリプトはフィールドに入力しますが、値は ではないselected
ため、次のステップに進むと、このフィールドに値がありません。値が 4 より大きい場合、すべて問題ありません (値も jquery によって埋められます)。
これは私のコードです:
function compute() {
if( parseInt($("#finish_day").val()) < 4 ) {
$('#return_car').children('#return_car option[value=' + $('#get_car').val() + ']').attr('selected', true).siblings().attr('disabled', true);
if ($('#return_car').val()) $('#return_car').change();
}
else {
$('#get_car > option, #return_car > option').prop('disabled', false);
$('#three_day').hide(2000, function () {
$(this).remove();
});
}
}
$('select#get_car').change(compute);
$('input#finish_day').change(compute);
HTML コード:
<form>
<fieldset>
<div class="type-select">
<label for="get_car">Miasto wynajmu: *</label>
<select id="get_car" name="rent-a-car-next[get_car]" class="select">
<option value="">---</option>
<option value="Katowice">Katowice</option>
<option value="Kraków">Kraków</option>
<option value="Warszawa">Warszawa</option>
<option value="Wrocław">Wrocław</option>
<option value="Gdańsk">Gdańsk</option>
</select>
</div>
<div class="type-select">
<label for="return_car">Miasto zwrotu: </label>
<select id="return_car" name="rent-a-car-next[return_car]" class="select">
<option value="">---</option>
<option value="Katowice">Katowice</option>
<option value="Kraków">Kraków</option>
<option value="Warszawa">Warszawa</option>
<option value="Wrocław">Wrocław</option>
<option value="Gdańsk">Gdańsk</option>
</select>
</div>
<div class="type-text">
<label for="finish_day">Ilość dni wynajmu: </label>
<input type="text" size="20" id="finish_day" name="rent-a-car-next[finish_day]" value="" readonly="readonly" />
</div>
<div class="type-button">
<input type="submit" name="rent-a-car-next[step-2-next]" class="button submit" value="Kolejny krok" />
</div>
</fieldset>
</form>
問題はどこだ?助けてくれてありがとう