テキストボックス内の値(数値)に基づいてドロップダウンからフィールドを削除して追加できます。テキストフィールドに基づいてドロップダウンからフィールドを削除して追加します。
私はアイテムを削除する次のjsfiddleを試みましたが、値が変更されて条件が追加された場合はアイテムを追加する必要があります。
また、日数が多すぎたり少なすぎたりする場合は、すべてのオプションを別にする必要があります。例えば、ユーザは、次のドロップダウンに表示されるでしょう30を入力した場合: ブラジル 中国 ポルトガル、1から6日 ポルトガル、7から28日 スペイン、1から6日 スペイン、7から28日
テキストボックスの値が5に変更された場合、 'Portugal、29+ days'、 'Spain、29+ days'のオプションが再追加され、 'Portugal、1-6 days'、 'Spain、1-6 days 'が削除されます。ここで
Amount: <input type="text" id="amountofdays" />
<select id="destination" name="destination" size="1">
<option value=""> </option>
<option value="Brazil">Brazil</option>
<option value="China">China</option>
<option value="Portugal, 1 – 6 days">Portugal, 1 – 6 days</option>
<option value="Portugal, 7 – 28 days">Portugal, 7 – 28 days</option>
<option value="Portugal, 29+ days">Portugal, 29+ days</option>
<option value="Spain, 1 – 6 days">Spain, 1 – 6 days</option>
<option value="Spain, 7 – 28 days">Spain, 7 – 28 days</option>
<option value="Spain, 29+ days">Spain, 29+ days</option>
</select>
$("#amountofdays, #destination").change(function() {
var amountofdaystotal = document.getElementById("amountofdays").value;
if ((amountofdaystotal) <= (29)) {
var selectobject=document.getElementById("destination")
for (var i=0; i<selectobject.length; i++){
if (selectobject.options[i].value == 'Portugal, 29+ days' ||
selectobject.options[i].value == 'Spain, 29+ days')
selectobject.remove(i);
}
}
});
はjsfiddleです: https://jsfiddle.net/pele09/xpg6sfga/8/
誰が助けることができますしてください?ここで
したがって、入力した金額と同じ日数以上のオプションをドロップダウンに表示したいのですか?ブラジルと中国はどうですか? –
こんにちはJoey、すべてのオプションは、日数が大きすぎるか小さすぎるかを区別する必要があります。たとえば、ユーザーが次のドロップダウンに表示されるでしょう30を入力した場合: ブラジル 中国 ポルトガル、1から6日 ポルトガル、7から28日 スペイン、1から6日 スペイン、7から28日 の場合「ポルトガル、29+日」、「スペイン、29+日」は5に変更され、「ポルトガル、1〜6日」および「スペイン、1〜6日」は削除されます。 – pele09