【发布时间】:2021-06-14 20:43:39
【问题描述】:
我正在尝试编写一个计算在车库中的价格的程序,但我不知道在取消选中该复选框后如何取消该功能。这是我的代码:
function Car() {
var value = 0;
var PrivateCar = document.getElementById("PrivateCar").value;
var CommercialCar = document.getElementById("CommercialCar").value;
var Truck = document.getElementById("Truck").value;
var ScentTree = document.getElementById("ScentTree").value;
var PrivateCarWax = document.getElementById("PrivateCarWax").value;
var CommercialCarWax = document.getElementById("CommercialCarWax").value;
if (document.form1.PrivateCar.checked == true) {
document.getElementById("Car").innerHTML = "You have a private car." + "<br />";
value += 30;
}
if (document.form1.CommercialCar.checked == true) {
document.getElementById("Car").innerHTML = "You have a commercial car" + "<br />";
value += 45;
}
if (document.form1.Truck.checked == true) {
document.getElementById("Car").innerHTML = "You have a truck" + "<br />";
value += 60;
}
if (document.form1.ScentTree.checked == true) {
document.getElementById("Extras").innerHTML = "You have chosen the addition of a scent tree" + "<br />";
value += 5;
}
if (document.form1.PrivateCarWax.checked == true) {
document.getElementById("Extras").innerHTML = "You have chosen the addition of Wax to a private car" + "<br />";
value += 10;
}
if (document.form1.CommercialCarWax.checked == true) {
document.getElementById("Extras").innerHTML = "You have chosen the addition of Wax to a private car" + "<br />";
value += 20;
}
document.getElementById("price").innerHTML = "The price you have to pay is: " + value + " dollars";
}
<body dir="rtl">
<form name="form1">
<h1 style="color:red">Car Washing Price List</h1>
<br />
<b>Car Type:</b>
<br />
<input type="radio" id="PrivateCar" name="CarType" /> Private Car - 30 dollars
<br />
<input type="radio" id="CommercialCar" name="CarType" /> Commercial Car - 45 dollars
<br />
<input type="radio" id="Truck" name="CarType" /> Truck - 60 dollars
<br />
<br />
<b>Extras:</b>
<br />
<input type="checkbox" id="ScentTree" /> Scent tree - 5 dollars
<br />
<input type="checkbox" id="PrivateCarWax" /> Wax for private car - 10 dollars
<br />
<input type="checkbox" id="CommercialCarWax" /> Wax for commercial car - 20 dollars
<br />
<input type="checkbox" id="TruckWax" disabled /> Wax for truck - You can't choose wax for a truck
<br />
<br />
<input type="button" id="button" value="Click to get a price" onclick="Car()" />
<p id="Car"></p>
<p id="Extras"></p>
<p id="price"></p>
</form>
我正在尝试:
- 单击“PrivateCar”单选按钮后禁用“CommercialCarWax”复选框。
- 单击“CommercialCar”单选按钮后禁用“PrivateCarWax”复选框。
- 单击“卡车”单选按钮后,禁用“CommercialCarWax”复选框和“PrivateCarWax”复选框。
【问题讨论】:
-
代码中某处存在语法错误
-
<script>...</script>标签不属于 JavaScript 框。 -
只需运行
Car更改单选按钮的方法.... 同样Car将指示类/构造函数,而不是函数。套管是有意义的。 -
您正在寻找event listeners。基本上你在单选按钮上设置了一个
change事件监听器,然后触发一个函数来根据新的单选值启用/禁用复选框。 -
这能回答你的问题吗? How to use radio on change event?
标签: javascript html forms function if-statement