gpt4 book ai didi

javascript - 从单选按钮到 int 的值并计算

转载 作者:行者123 更新时间:2023-11-30 14:17:07 28 4
gpt4 key购买 nike

我刚刚开始编程,所以答案可能很明显。我的代码有一个单选按钮(服务价格)和一个下拉菜单(订单数量),我想用这些值进行计算。到目前为止一切顺利,我花了将近一天的时间才得到这个简短的代码。

我现在的问题是,我需要实时显示结果,可能在像

这样的输入标签中
   <p><strong>Amount (US$)</strong>: <input type="text" name="amount" id="amount" /></p>

也许还有更好的方法?因此,应始终选中两个单选按钮之一并显示其价格。当用户从下拉菜单中选择数量时,结果应该会自动刷新。谁能帮我?

<html lang="en">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>

<body>
<label>ABC
<input class="test" type="radio" checked="checked" name="test" value="500">
</label>
<label>DEF
<input class="test" type="radio" name="test" value="800">
</label>
<select size="1" name="dropdown" onchange='calculate(this.value);'>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<p><strong>Amount (US$)</strong>: <input type="text" name="amount" id="amount" /></p>
</body>

感谢您的帮助!

编辑:好吧,连计算都错了。我想获取选中的单选按钮的值并将其转换为 int。在此之后,我需要将 int 与复选框中的值相乘。我不知道我错过了什么,但它总是用第一个单选按钮值计算,即使我检查了第二个。

<script>
var x = $('input[name="test"]:checked').val();
var xInt = parseInt(x, 10);

function calculate (val) {
var result = val * xInt ;
var amountPrint = document.getElementById('amount');
amountPrint.value = result;
}

$(".test").click(function(event) {
var total = 0;
$(".test:checked").each(function() {
total += parseInt($(this).val());
});

if (total == 0) {
$('#amount').val('');
} else {
$('#amount').val(total);
}
});
</script>

我仍然遇到问题,我需要实时显示结果,具体取决于选中的单选按钮和下拉值。所以我在单选按钮中添加了一个类“测试”并添加了上述功能。现在我实时得到了结果,这取决于选中的单选按钮,但计算仍然是错误的,我需要以某种方式组合它。

最佳答案

<html lang="en">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>

<body>
<label>ABC
<input type="radio" checked="checked" name="test" value="500">
</label>
<label>DEF
<input type="radio" name="test" value="800">
</label>
<select size="1" name="dropdown" onchange='calculate(this.value);'>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<p><strong>Amount (US$)</strong>: <input type="text" name="amount" id="amount" value="" /></p>
</body>

<script>
var x = $('input[name="test"]:checked').val();
var xInt = parseInt(x, 10);


function calculate (val) {
var result = val * xInt ;
var amountPrint = document.getElementById('amount');
amountPrint.value = result;
}
</script>

您只需要将一个新值推送到金额区域即可。

我所做的只是添加了一个 value=""到 Amount 输入,可以跳过,但这是 IMO 的良好做法。

然后在js下面。通过您之前提供的 id 获取元素。

然后使用您的计算,并告诉它更改 id 'amount' 的值

您还可以添加 <p id='printResultsHere'></p>例如,以几乎相同的方式调用。

希望对您有所帮助。如果是这样,请将答案标记为已接受。

关于javascript - 从单选按钮到 int 的值并计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53403989/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com