我只是想找出做某事的最佳方法。在我的页面上,我有 2 个下拉框和一个总文本字段。
当我从下拉框中选择一个选项时,我希望相应地更新总数,我认为到目前为止我已经这样做了,但是我没有考虑他们是否改变主意并再次更改相同的下拉框。
我的 HTML 页面看起来像这样
<body>
<div id = "form">
<form id = "test">
<p>
<label>Case:</label>
<select id="box1" onchange="code(1)">
<option value="0.00">No Case - $0.00</option>
<option value="300.00">Case 1 - $300.00</option>
<option value="100.00">Case 2 - $100.00</option>
<option value="600.00">Case 3 - $600.00</option>
<option value="50.00">Case 4 - $50.00</option>
</select>
<label>Color:</label>
<select id="box2" onchange="code(2)">
<option value="20.00">Red - $20.00</option>
<option value="50.00">Green - $50.00</option>
</select>
<input type="text" name="cost" id="cost" onfocus="this.blur()"/>
</p>
</form>
</div>
</body>
我的 javascript 看起来像这样
function code(num){
var boxnum = "box"+num;
if (boxnum == "box1")
{
var b = document.getElementById("box1");
}
else if(boxnum == "box2")
{
var b = document.getElementById("box2");
}
var boxcost = b.options[b.selectedIndex].value;
var cost = document.getElementById('cost').value;
cost = parseFloat(cost) + parseFloat(boxcost)
document.getElementById('cost').value = cost;
}
就目前而言,我可以从 box1 中选择案例 3,它会增加 600 美元,但如果我改变主意然后说没有案例,它只会在 600 中添加 0。
抱歉,如果它是一个非常明显的问题,只是整天都在努力让它工作并且有点脑死。
谢谢