你好,我看到了帖子,我构建了这段代码......但它不起作用...... 我有收音机和日期之间的差异 我想做的是"如果检查无线电号码1并且天数在0和1之间,则变量中写的价格是= 40","如果无线电号码1是检查,如果天数在2到3之间,则变量中写入的价格为= 37"依此类推。 我尝试使用if else和switch但它不起作用告诉我你知道什么? 这是工作示例,不会根据天http://www.motoeshopping.com/noleggio.php更改价格 致谢
HTML
<form action="prenotaa.php" name="modpren" id="modpren" method="post">
<br/>
<label for="from">Dal</label>
<input type="text" id="from" name="from" onChange="startEndDate(); calcolo();">
al
<label for="to"></label>
<input type="text" id="to" name="to" onChange="startEndDate(); calcolo();">
<br/><br/>
Seleziona i veicoli di cui richiedere la disponibilità<br/>
<input type="radio" name="veicoli" value="46" onClick="calcolo();" id="v1"/>
FIAT GRANDE PUNTO 1.3 DIESEL <br/>
<input type="radio" name="veicoli" value="55" onClick="calcolo();" id="v2"/>
PEUGEOT 208 1.4 DIESEL <br/>
<input type="radio" name="veicoli" value="36" onClick="calcolo();" id="v3"/>
FIAT PANDA 1.2 BENZINA <br/>
<input type="radio" name="veicoli" value="55" onClick="calcolo();" id="v4"/>
FIAT SEDICI 1.9 DIESEL <br/>
<input type="radio" name="veicoli" value="40" onClick="calcolo();" id="v5"/>
HYUNDAI I 10 1.1 BENZINA<br/>
<input type="radio" name="veicoli" value="38" onClick="calcolo();" id="v6"/>
TOYOTA AYGO 1.0 BENZINA <br/>
<input type="radio" name="veicoli" value="38" onClick="calcolo();" id="v7"/>
NISSAN MICRA 1.2 BENZINA <br/>
<input type="radio" name="veicoli" value="55" onClick="calcolo();" id="v8"/>
MULTIPLA 1.9 DIESEL <br/>
<input type="radio" name="veicoli" value="36" onClick="calcolo();" id="v9"/>
SCOOTER APRILIA ATLANTIC - 125 <br/>
<input type="radio" name="veicoli" value="36" onClick="calcolo();" id="v10"/>
SCOOTER SUZUKI UH 125 <br/>
<input type="radio" name="veicoli" value="75" onClick="calcolo();" id="v11"/>
HONDA TRANSALP 650 <br/>
<input type="radio" name="veicoli" value="95" onClick="calcolo();" id="v12"/>
PULLMINO 9 POSTI FORD TRANSIT 2.2 DIESEL <br/>
<input type="radio" name="veicoli" value="95" onClick="calcolo();" id="v13"/>
PULMINO 9 POSTI NISSAN PRIMASTAR 2.5 DIESEL<br/>
<input type="radio" name="veicoli" value="95" onClick="calcolo();" id="v14"/>
FURGONE TRASPORTO MERCI - DUCATO MAXI 2.3 DIESEL<br/><br/>
<input type="radio" name="km" value="10" id="km_0" onClick="calcolo();">
Km Illimitati
<input type="radio" name="km" value="0" id="km_1" onClick="calcolo();">
100km inclusi</p>
<br/>Servizi aggiuntivi<br/>
<input type="checkbox" name="ass[]" value="Furto-Incendio" >
Assicurazione Furto/Incendio
<input type="checkbox" name="ass[]" value="Casco" >
Casco
<br/><br/>
Calcolo preventivo <br/>
Giorni<input type="number" name="giorni" id="giorni" value="" >
Veicolo €<input type="number" name="checkveicoli" id="checkveicoli" value="" required readonly>
Km €<input type="number" name="checkkm" id="checkkm" value="" required readonly><br/><br/>
Totale: €<input type="number" name="totalesomma" id="totalesomma" value="" class="number1" readonly ><br/><br/>
Nome e Cognome
<input type="text" id="nome" name="nome">
Numero di Tel.
<input type="text" id="tel" name="tel"></p><br/>e-mail
<input type="text" id="email" name="email"></p>
<input type="submit" value="Invia">
</form>
方法1 if else
<script type="text/javascript">
if (veicoli[v1].checked==true && document.modpren.giorni.value >=0 && document.modpren.giorni.value <=1) { document.modpren.checkveicoli.value=40; }
else if (veicoli[v1].checked==true && document.modpren.giorni.value >=2 && document.modpren.giorni.value <=3) {document.modpren.checkveicoli.value=37;}
else if (veicoli[v1].checked==true && document.modpren.giorni.value >=4 && document.modpren.giorni.value <=6){document.modpren.checkveicoli.value=35;}
else if (veicoli[v1].checked==true && document.modpren.giorni.value >=7 && document.modpren.giorni.value <=14){document.modpren.checkveicoli.value=33;}
else if (veicoli[v1].checked==true && document.modpren.giorni.value >=15 && document.modpren.giorni.value <=29){document.modpren.checkveicoli.value=30;}
else if(veicoli[v1].checked==true && document.modpren.giorni.value >=30){document.modpren.checkveicoli.value=27;}
else {modpren.checkveicoli.value=50;}
</script>
方法2切换
switch (veicoliparz=40){
case (document.modpren.giorni.value >=0 && document.modpren.giorni.value <=1):
document.modpren.checkveicoli.value=40;
break;
case (document.modpren.giorni.value >=2 && document.modpren.giorni.value <=3):
document.modpren.checkveicoli.value=37;
break;
case (document.modpren.giorni.value >=4 && document.modpren.giorni.value <=6):
document.modpren.checkveicoli.value=35;
break;
case (document.modpren.giorni.value >=7 && document.modpren.giorni.value <=14):
document.modpren.checkveicoli.value=33;
break;
case (document.modpren.giorni.value >=15 && document.modpren.giorni.value <=29):
document.modpren.checkveicoli.value=30;
break;
case (document.modpren.giorni.value >=30):
document.modpren.checkveicoli.value=27;
break;
}
答案 0 :(得分:0)
您没有正确处理输入字段。
检索输入元素(没有jQuery)的正确方法是使用document.getElementById: https://developer.mozilla.org/en-US/docs/Web/API/document.getElementById
因此,您应该说document.modpren.giorni.value
;
document.getElementById("giorni")
这是一个小提琴,展示了你应该如何检索你的价值观: http://jsfiddle.net/q066gkk5/
我还为&#34; giorni&#34;添加了一个onchange处理程序。选择框以便您的总数正确更新。 请注意,你不应该在html标签上附加事件处理程序 - 而是通过JS - 你可以在这里阅读:https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener