【发布时间】:2020-07-29 10:51:12
【问题描述】:
我有一个包含两个选项的表单。用户可以选择填写选项a和添加选项b。最后计算所有填充输入的总和。我使用显示隐藏功能来显示选项 b 的字段。
如果可能的话,我尝试实现的是当用户选择两个选项时,填充它们并获得结果,如果他们选择更改回选项 a,则删除选项 b 的值并自动更新计算。
$("#option-b").click(function() {
$(".va3, .va4").show();
});
$("#option-a").click(function() {
$(".va3, .va4").hide();
});
calculate = function() {
var optiona1, optiona2, optiona3, optiona4, resultss;
optiona1 = Number(document.getElementById("a1").value);
optiona2 = Number(document.getElementById("a2").value);
optiona3 = Number(document.getElementById("a3").value);
optiona4 = Number(document.getElementById("a4").value);
if (a3 == null || a3 == "", a4 == null || a4 == "") {
resultss = parseInt(optiona1) + parseInt(optiona2);
} else {
resultss = parseInt(optiona1) + parseInt(optiona2) + parseInt(optiona3) + parseInt(optiona4);
}
document.getElementById('a5').value = resultss;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="option-a" onclick="document.getElementById('a3, a4').value = '0'">option a</button>
<button id="option-b">option b</button><br>
<label>Option a price 1:</label><input id="a1" type="text" /><br>
<label>Option a price 2:</label><input id="a2" type="text" /><br>
<label class="va3" style="display: none">Option b price 1:<input id="a3" type="text" /></label><br>
<label class="va4" style="display: none">Option b price 2:<input id="a4" type="text" /></label><br>
<label>Result:</label><input id="a5" type="text" onfocus="calculate()" name="total_amt" />
【问题讨论】:
标签: javascript jquery forms calculation