Javascript事件未被触发

时间:2010-06-18 20:24:35

标签: javascript javascript-events

点击#theButton后,应触发提醒。为什么没有使用以下方法触发任何事件? 提前致谢。

  <html>
     <head>
      <script type="text/javascript" language="javascript">

       var theButton = document.getElementById("theButton");

       theButton.onclick = function(){alert("Clicked!");}
       theButton.onclick = clickAlert;
       theButton.onclick(alert("Clicked!"));

       function clickAlert(){
        alert("Clicked!");
       }
      </script>
     </head>
     <body>
      <input type="button" id="theButton">
     </body>
    </html>

5 个答案:

答案 0 :(得分:2)

你有三个问题

  1. 你在第7行拼错function。(顺便说一下,这会产生运行时错误)
  2. 您尝试访问节点#theButton,然后才能在DOM中使用它。以Pekka对此的建议
  3. 您在第8行覆盖onclick属性 - 不确定您是故意这样做还是

答案 1 :(得分:1)

因为运行脚本时{0}还不存在?

将其包装到正文的theButton事件或jQuery的onload中。

答案 2 :(得分:1)

尝试将其包装在document.Ready()函数中。

答案 3 :(得分:1)

我喜欢jQuery.ready()答案,但我相信您也可以将<script>块移动到某个位置,以便在页面末尾删除按钮。

答案 4 :(得分:1)

如果你将onclick放在输入标签内(并拼写正确的话),它就有效:

<html>
     <head>
      <script type="text/javascript" language="javascript">



       function clickAlert(){
        alert("Clicked!");       

       }

      </script>
     </head>
     <body>
      <input type="button" id="theButton" NAME="theButton" onclick="clickAlert()">
     </body>
    </html>