从HTML按钮调用函数

5
我在这种情况下做错了什么?我有一个按钮,它是一个HTML元素。当我点击它时,我希望函数push()被激活。但不幸的是,我的控制台显示:

ReferenceError: push is not defined

有人可以帮我解决这个问题吗?非常感谢!

<button type="button" onclick=push()>Click Me!</button> 
<script type="text/javascript">
function push (){.....};
</script>


你能提供 push() 函数的内容吗? - Sanjay Rathod
2个回答

11

您可以将onclick=push()更改为onclick="push()"以使其正常工作!

此外,由于push函数主体中可能存在错误,导致无法编译 - 因此出现了错误。


1
如果等号后面没有空格,则不需要引号。 - user7951676

-1
你可以尝试以下方法:
如果你只想使用一个按钮来执行push()函数,可以这样做。
<button type="button" id="clickme">Click Me!</button> 

<script type="text/javascript">

document.getElementById("clickme").addEventListener("click", function() {.....}

</script>

如果你想要使用 push() 函数来控制多个按钮,可以这样做:

<button type="button" id="clickme">Click Me!</button> 

<script type="text/javascript">

document.getElementsByClassName("clickme").addEventListener("click", function() {.....}

</script>

优点:HTML 代码更少 缺点:JavaScript 代码更多


在这种情况下,getElementById不是更好的选择吗? - Suppe
@Suppe 是的,class 用于多个元素,而 id 仅用于一个元素,因此在这种情况下应该使用 GetElementById。 - Millefeuille

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接