Javascript 两个选择器功能似乎相互抵消

Javascript 两个选择器功能似乎相互抵消,javascript,Javascript,我在一个小脚本中设置了两个选择器。无论哪个在顶部,哪个在顶部以下,都不起作用或抛出错误。我把整个剧本从头到尾都看了一遍,没有任何问题 以下是两个选择器,其基本功能为preventDefault var btn = document.getElementById('scandrive'); btn.addEventListener("click", function(event) { event.preventDefault(); myFunction(); }); var getLi

我在一个小脚本中设置了两个选择器。无论哪个在顶部,哪个在顶部以下,都不起作用或抛出错误。我把整个剧本从头到尾都看了一遍,没有任何问题

以下是两个选择器,其基本功能为preventDefault

 var btn = document.getElementById('scandrive');
btn.addEventListener("click", function(event) {
  event.preventDefault();
  myFunction();
});

var getLink = document.querySelector('mylink');
getLink.addEventListener("click", function(event) {
  event.preventDefault();
  alertMe(getLink.href);
});
无论哪一个是第一个,工作和执行罚款。而且每一个都与不同的页面相关,所以不应该有任何冲突

老实说,我一直在寻找,也许我没有把代码放在正确的位置上,但没有什么能让我脱颖而出。我假设通常可以在开始、中间或结束处设置选择器。此外,提及它可能并不重要,但脚本链接就在结束正文标记的正上方,以防万一。我在脑袋里试过,但没什么区别

编辑:添加html-

<ul class="list-group">
      <a id="mylink" href="link1">Link 1</a>
 </ul>

<button type="submit" class="btn btn-info" id="scandrive" input type="Submit">Check to scan or update</button>
检查以扫描或更新
请尝试以下方法:

var btn = document.getElementById('scandrive');
btn.addEventListener("click", function(event) {
  event.preventDefault();
  myFunction();
});

var getLink = document.getElementById('mylink');
getLink.addEventListener("click", function(event) {
  event.preventDefault();
  alertMe(getLink.getAttribute(href));
});

如果要使用querySelector标记ID,则应将其作为css选择器(#myLink)传递,并且HTMLElements没有href属性,因此必须通过getAttribute方法提取它。请共享HTML。选择了哪些元素?它们是不同的元素吗?我刚刚添加了相关的html。这些元素是不同且独立的元素,一个是按钮,另一个是标记。事件处理程序的定义顺序应该无关紧要。是否更改为
document.querySelector('#mylink')修复问题?如果没有井号(?)它根本不应该工作。您可以创建一个代码片段或JSFIDLE来演示问题吗?我现在根据您的建议(以及之前的建议)尝试了它,但没有任何更改。我还发现不需要
getAttAttribute
。当我使用该函数时,我发现只需
href
即可。