我有一张桌子,每行里面都有一个复选框。
<input type="checkbox" onclick="handleClickOnReduce(this)" checked="">
处理程序的工作方式如下:
function handleClickOnReduce (dom) {
console.log(dom)
if (dom.checked === 'true') {
console.log('checked')
}
if (dom.toString().includes('checked')) {
console.log('checked')
}
if (stompClient) {
var chatMessage = {
sender: 'userRequest',
content: [dom.parentElement.id],
type: 'REDUCE'
}
stompClient.send('/app/chat.sendMessage', {}, JSON.stringify(chatMessage))
}
}
您已经可以看到我的问题了。我尝试找出handleClockOnReduce函数的调用方的复选框是选中还是未选中。
有什么主意吗?
答案 0 :(得分:1)
dom.checked
的布尔值true
与字符串"true"
不同。与true
进行比较:
if(dom.checked === true)
或者只将布尔itslef作为条件:
if(dom.checked)
您显示的其他条件
if (dom.toString().includes('checked'))
非常容易出错,因为<option id="checked">
也会匹配。