无法在javascript中计算表单值



我得到了这样一个输入,它带有一个编号值

<input type="radio" id="ja" name="upprepas" value="0">
<input type="radio" id="ja" name="bekanta" value="2">

但是我还有10个其他的输入,我想计算所有的输入值。所以我试着这样做:

var select = document.querySelector('input[name="upprepas"]:checked');
console.log(select.value);
var selecto = document.querySelector('input[name="bekanta"]:checked');
console.log(selecto.value);
var selector = select.value + selecto.value;
console.log(selector.value);

但是选择器总是未定义的,为什么?我认为它可能是一个字符串,而不是一个整数,所以我试着把parseInt之前选择。

你需要做的是用var selector = parseInt(select.value) + parseInt(selecto.value);代替var selector = select.value + selecto.value;也使用constlet代替var,这是最佳实践^^

你可以使用querySelectorAll查找所有选中的无线电,循环遍历它们的值并将它们相加。

let checked = document.querySelectorAll("input[type='radio']:checked");
let total = 0;
checked.forEach(function(e){
total += parseInt(e.value);
});
console.log(total)
<input type="radio" name="kreativxt" value="10"> A
<input checked type="radio" name="krexativt" value="1"> V
<input checked type="radio" name="krewativt" value="2"> C

相关内容

  • 没有找到相关文章

最新更新