javascript - 如何检查按钮是否被单击,在其上放置一个值,然后使用innerHTML?
问题描述
基本上我想为用户提供两个选项,是或否。例如,如果他单击“是”按钮,则此信息将被保存,我可以在问卷末尾显示他选择的内容。
我正在尝试这种方式,但它不起作用。最后,屏幕上什么都没有出现……
answer2-A = 是按钮
answer2-B = 无按钮
----------------------------------------//-------------------- ----//--------------
document.getElementById('answer2-A').addEventListener("click", defineYes);
document.getElementById('answer2-B').addEventListener("click", defineNo);
};
function defineYes(){
document.getElementById('answer2-A').value = 'Yes';
document.getElementById('info').innerHTML = document.getElementById('answer2-A');
};
function defineNo(){
document.getElementById('answer2-B').value = 'No';
document.getElementById('info').innerHTML = document.getElementById('answer2-B');
解决方案
几乎没有要解决的问题 - 没有看到 HTML,我认为该value
属性未在按钮上设置。此外,您可以/应该获取对按钮的引用并重新使用它们,而不是一遍又一遍地查询。您可以使用target
事件的 来访问您单击的按钮。
const yesBtn = document.getElementById('answer2-A')
const noBtn = document.getElementById('answer2-B')
const info = document.getElementById('info');
yesBtn.addEventListener("click", trackClick);
noBtn.addEventListener("click", trackClick);
function trackClick(e) {
info.innerHTML = e.target.value;
}
<button id="answer2-A" value="Yes">Yes</button>
<button id="answer2-B" value="No">No</button>
<div id="info"></div>
推荐阅读
- android - Android 菜单项以一种完全奇怪的方式出现
- javascript - Javascript函数未使用html onclick触发
- java - Android 相机 QR 扫描仪的权限
- python - “定义”和“分配”有什么区别?
- reactjs - React 在 componentDidUpdate 中获取新数据
- opencv - 如何刷新imshow的显示窗口?
- passport.js - passport-linkedin-oauth2 升级到 Linkedin API v2,范围内包含 r_liteprofile
- python - Python Pandas 数据透视表计算
- firebase - 如何在flutter中使用firebase电话身份验证中的forceResendingToken重新发送otp
- html - 如何在按钮上分离双悬停?