html table 多选框,HTML单选表格和多选表格实现

这篇博客介绍了如何在HTML表格中实现单选和多选功能。通过JavaScript函数`clickRadio`实现了单选表格中选中项的获取和显示,而`clickCheckbox`和`checkAll`函数则用于多选表格的选中项管理和全选功能。同时,`updateText`函数用于更新选中项的文本展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

单选表格

69f79f0c9b65

1

单选表格

#id

123

当前选择:

function clickRadio () {

console.log(document.querySelector('.radio-table tbody input[type=radio]:checked'))

document.getElementById('checked').innerHTML = document.querySelector('.radio-table tbody input[type=radio]:checked').value

}

多选表格

69f79f0c9b65

12

多选表格

id

123

当前选中:

var checkValues = []

function clickCheckbox () {

var checkDomArr = document.querySelectorAll('.multi-table tbody input[type=checkbox]:checked')

checkValues = []

for (var i = 0, len = checkDomArr.length; i < len; i++) {

checkValues.push(checkDomArr[i].value)

}

updateText()

var allCheckDomArr = document.querySelectorAll('.multi-table tbody input[type=checkbox]')

var allCheckbox = document.getElementById('js-all-checkbox')

for (var i = 0, len = allCheckDomArr.length; i < len; i++) {

if (!allCheckDomArr[i].checked) {

if (allCheckbox.checked) allCheckbox.checked = false

break

} else if (i === len - 1) {

document.getElementById('js-all-checkbox').checked = true

return

}

}

}

function checkAll (current) {

var allCheckDomArr = document.querySelectorAll('.multi-table tbody input[type=checkbox]')

if (!current.checked) { // 点击的时候, 状态已经修改, 所以没选中的时候状态时true

checkValues = []

for (var i = 0, len = allCheckDomArr.length; i < len; i++) {

var checkStatus = allCheckDomArr[i].checked

if (checkStatus) allCheckDomArr[i].checked = false

}

} else {

checkValues = []

for (var i = 0, len = allCheckDomArr.length; i < len; i++) {

var checkStatus = allCheckDomArr[i].checked

if (!checkStatus) allCheckDomArr[i].checked = true

checkValues.push(allCheckDomArr[i].value)

}

}

updateText()

}

function updateText () {

document.getElementById('js-check-text').innerHTML = JSON.stringify(checkValues)

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值