gpt4 book ai didi

javascript - 仅当选中复选框时,如何将 #.## 值添加到其中已有另一个 ##.## 值的文本框中?

转载 作者:行者123 更新时间:2023-11-28 02:05:00 24 4
gpt4 key购买 nike

我一直在尝试弄清楚如何制作它,以便如果选中特定复选框,则在提交表单之前单击提交按钮时,文本框中的总金额将添加到其中 50.00。事实上,最好在选中该复选框后立即进行更新。

这是我迄今为止尝试过的:

<!DOCTYPE html>
<html>
<head>
<script>
function toggle(){
var indoorCamping = 50.00;
var total = 0.00;
if(document.getElementByName('fifty').is(':checked')){
total = (indoorCamping + document.getElementsByName('Amount').value);
document.getElementsByName('Amount').value = total;
}

else{
return;
}
}
</script>
</head>
<body>

<p>Click the button to trigger a function.</p>

<input type="checkbox" name="fifty" value="indoor"/>

<label for="Amount">Amount <span class="req">*</span> <span

id="constraint-300-label"></span></label><br />
<input type="text" class="cat_textbox" id="Amount" name="Amount" />

<p id="demo"></p>

<button onclick="toggle()">Click me</button>

</body>
</html>

最佳答案

文本输入的值最初始终是文本(字符串)。在添加该值之前需要显式转换为数字,否则它会连接文本。因此“20”将变成“5020”。

借用mohkhan的代码:

<script>
function toggle(checkbox){
var indoorCamping = 50.00;
var total = 0.00;
if(checkbox.checked){
total = (indoorCamping + document.getElementById('Amount').value * 1);
document.getElementById('Amount').value = total;
}
}
</script>

我乘以 1,这是将“20”转换为数字的一种方法。 Number(x)parseInt(x)parseFloat(x) 是其他方法。

不过,我更愿意使用对象变量,amt:

<script>
function toggle(checkbox) {
var indoorCamping = 50.00;
var total = 0.00;
var amt = null;
if (checkbox.checked) {
amt = document.getElementById('Amount');
total = (indoorCamping + amt.value * 1);
amt.value = total;
}
}
</script>

关于javascript - 仅当选中复选框时,如何将 #.## 值添加到其中已有另一个 ##.## 值的文本框中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17903851/

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