Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript addEventListener未链接到元素Id?_Javascript_Html_Asp.net_Visual Studio - Fatal编程技术网

Javascript addEventListener未链接到元素Id?

Javascript addEventListener未链接到元素Id?,javascript,html,asp.net,visual-studio,Javascript,Html,Asp.net,Visual Studio,尝试创建一个超级简单的脚本,在单击按钮后对页面说欢迎 消息根本没有出现,我不明白为什么 按钮的代码是HTML格式的 <script src="JavaScript.js"></script> <div class="container text-center"> <a href="Conditions.aspx" class="newButton b

尝试创建一个超级简单的脚本,在单击按钮后对页面说欢迎

消息根本没有出现,我不明白为什么

按钮的代码是HTML格式的

<script src="JavaScript.js"></script>

<div class="container text-center">
       
        <a href="Conditions.aspx"  class="newButton btn" id="EnterButton">
           
        <span>Enter Irish Wrecks</span>
        </a>
         
    </div>

如果您能为我指明正确的方向,我们将不胜感激。

首先,您需要确保在addEventListener调用中正确写入WelcomeMessage(因为Javascript区分大小写)。此外,您不能添加分隔符,因为您传递了函数,并且不想在addEventListener中调用它。我建议您将来使用浏览器的开发者控制台(Chrome和Firefox中的F12)更快地定位点错误

var firstButton = document.getElementById("EnterButton");

firstButton.addEventListener("click", WelcomeMessage, false);

function WelcomeMessage() {
    alert("Welcome to Irish Ship Wrecks");
}
祝你好运


另外,请确保包含的脚本文件的名称正确。

问题在于,您在该按钮之前包含了脚本

因此它无法检测到它

就这些:)

--编辑--


脚本
标记移动到
正文的末尾
这里有3个问题

  • 不要调用
    addEventListener
    的第二个参数中的函数,只需将引用/定义作为
    回调传递即可
    
  • 函数调用的案例问题。函数名区分大小写
  • 脚本执行在DOM元素初始化之前,因此
    firstButton
    将具有
    未定义的值。将脚本放在末尾可以解决这个问题
var firstButton=document.getElementById(“EnterButton”);
firstButton.addEventListener(“单击”,欢迎消息,错误);
函数WelcomeMessage(){
警报(“欢迎来到爱尔兰沉船事件”);
}

将脚本移动到html末尾,或在关闭body标记之前。另一种方法是使用区分大小写的JavaScript<代码>欢迎留言!==欢迎留言
。另外,如果添加括号,则是在执行函数,而不是将其作为引用传递。省略那些<代码>第一个按钮。添加EventListener(“单击”,欢迎消息,错误)
var firstButton = document.getElementById("EnterButton");

firstButton.addEventListener("click", WelcomeMessage, false);

function WelcomeMessage() {
    alert("Welcome to Irish Ship Wrecks");
}