它总是说 if (checks[i].checked === true )
这是我遇到的错误...
我想从复选框值中获取值...
function submitFun() {
var checks = document.getElementsByClassName('checks')
var str = "";
for (let i = 0; i < 3; i++) {
if (checks[i].checked === true) {
str += checks[i].value + "";
}
}
alert(str);
}
<div class="container">
<input type="checkbox" class="checks" value="뜨거워"> hot
<input type="checkbox" class="checks" value="추워"> clod
<a href="#" onclick="submitFun();return false;">ok </a>
</div>
最佳答案
当您有两个 ( 2 ) 个复选框时,您将迭代三 ( 3 ) 次,在循环结束时,i
将是 2
和 check[2]
是undefined
, 做 i < checks.length
而不是 i < 3
:
function submitFun() {
var checks = document.getElementsByClassName('checks')
var str = "";
for (let i = 0; i < checks.length; i++) {
if (checks[i].checked === true) {
str += checks[i].value + " ";
}
}
alert(str);
}
<div class="container">
<input type="checkbox" class="checks" value="hot"> hot
<input type="checkbox" class="checks" value="cold"> clod
<a href="#" onclick="submitFun();return false;">ok </a>
</div>
关于javascript - 我想获取复选框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58117775/