2014-09-23 72 views
0

你好我看到帖子和我建立这个代码...但它不工作... 我有一台收音机和日期之间的差异 我想要的是“如果收音机号码1被检查,如果天数在0和1之间,写入变量的价格是= 40“,”如果收音机号码1被检查,并且如果天数在2和3之间,写入变量的价格是= 37“等等。 我试过如果其他和切换,但它不起作用告诉我你知道的东西? 这是没有根据本天http://www.motoeshopping.com/noleggio.php THANKSJS HTML条件if else或开关

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="" > &nbsp; 

Veicolo €<input type="number" name="checkveicoli" id="checkveicoli" value="" required readonly>&nbsp; 

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如果别的

<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

switch语句没有意义。这些案件都不会解决为“40”。这是一个错字吗? – 2014-09-23 19:02:12

+0

你好,感谢你的答复......这是一个考验。这只是该工作室js – 2014-09-24 13:39:12

回答

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/

我还添加了一个onchange处理程序“GIORNI”选择框,这样你的总正确更新。 请注意,您不应该在html标签上附加事件处理程序 - 而是通过JS - 您可以在此处阅读:https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener

+0

你好首先非常感谢你!我按照你的说法做了,但是它的输入值为40以上......这就好像法律不会改变日子,因此......我已经更新了你的DECK链接jsfiddle.net/q066gkk5/1 – 2014-09-24 13:48:23

+0

好的 - 我认为你真的需要退后一步。你现在已经添加了Jquery到你的代码中(使用$),但是你没有包含源代码 - 所以这是行不通的。另外,如果你使用jQuery,那么你可以通过使用$(“#idOfTheFieldgoesHere”)来获得你的字段的值。val() - 在你的小提琴中,我注意到控制台错误马上 - 你也没有改变任何其他领域在你如何获得价值 - 记住你必须使用document.getElementById或jquery方式$(“#...”)...另外 - 要使用jqueryUI datepicker,你需要确保你包含必要的jqueryUi文件 – 2014-09-24 13:49:24

+0

我有它,我没有复制 我更新了链接 – 2014-09-24 13:59:07