当我尝试将(onclick)值发送到toggle_sprint()函数时,我收到错误,该值未定义。为什么没有定义?我认为当我输入 value="false"时它就被定义了,但显然没有。
<div class="select">
<div id="toggle_sprint" value="false" onclick="toggle_sprint(value);" >Toggle Sprint</div>
</div>
最佳答案
div 元素没有 value
属性……而且 div 元素并非设计为可交互的,因此您通过使用 onclick
会造成一系列辅助功能问题一个div。
此外,您使用 intrinsic event attribute means that toggle_sprint()
probably isn't what you think it is .
从编写良好的 HTML 开始。
使用 data-*
属性为您的 JS 提供数据。使用按钮提供点击并触发 JS 的东西。
然后使用 JavaScript 绑定(bind)您的事件处理程序。
document.getElementById("toggle_sprint").addEventListener("click", function(event) {
toggle_sprint(this.dataset.value);
});
function toggle_sprint(arg) {
console.log(arg);
}
<div class="select">
<button type="button" id="toggle_sprint" data-value="false">Toggle Sprint</button>
</div>
关于javascript - 尝试使用 onclick 调用函数时未定义值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33525164/