我正在致力於第一年項目的簡單汽車預訂系統,其中包括對javascript的介紹。Javascript更新價格選擇onchange
在第一頁上,用戶輸入的值用php傳遞給頁面2,下面我的javascript工作正常,可以計算出租價格。
我的問題
然而,第2頁,用戶可以編輯自己的預訂,即升級車型。這應該導致價格上漲或下降,具體取決於用戶選擇的carGroup
。
當我將onchange
添加到select
元素的carGroup
價格沒有變化,我沒有得到任何錯誤,這不會讓情況更容易調試。
下面的代碼是非常基本的,我將不勝感激,如果有人可以給它一個掃描,也許建議我要去哪裏錯了。
UI
的Javascript
function calcPrice() {
var oneDay = 24 * 60 * 60 * 1000;
var firstDate = document.getElementById("firstDate").value;
var secondDate = document.getElementById("secondDate").value;
var date1 = firstDate.substring(0, 11);
var date2 = secondDate.substring(0, 11);
date1 = date1.replace(/\//g, ",");
date2 = date2.replace(/\//g, ",");
var firstDate = new Date(date1);
var secondDate = new Date(date2);
var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay)));
//calculate rental price
var price;
var dayRate;
var carGroup = document.getElementById("group").value;
//change values to increase or decrease price
var a = 250;
var b = 500;
var c = 750;
var d = 1000;
if (carGroup == 'a') {
price = diffDays * a;
dayRate = a;
} else if (carGroup == 'b') {
price = diffDays * b;
dayRate = b;
} else if (carGroup == 'c') {
price = diffDays * c;
dayRate = c;
} else if (carGroup == 'd') {
price = diffDays * d;
dayRate = d;
}
document.getElementById("rentalInfo").innerHTML = diffDays + ' Day Rental, At: ' + dayRate + ' Per Day. <span style="color:red; font-weight:bold"> Total Price: ' + price + '</span>';
}
的Html
<select onChange="calcPrice()"name="carType" id="group">
<option selected value="<?php echo $carType ?>"><?php echo $carType?></option>
<option value="a">Group A (Hyundai I10)</option>
<option value="b">Group B (VW POLO)</option>
<option value="c">Group C (Corolla)</option>
<option value="d">Group D (Bakkie)</option>
</select>
</div><!--formGroup-->
的jsfiddle
I created a JSFIDDLE here,用我的jsfiddle唯一的問題是,calcPrice()
功能應該<body onload="calcPrice()">
運行,我懷疑是不是在的jsfiddle
HolyMoly非常感謝你 – Marilee
我的榮幸!快樂的編碼! – HolyMoly