2个选择器功能似乎互相取消

时间:2018-01-11 22:54:37

标签: javascript

我在当前的小脚本中设置了两个选择器。无论哪一个在顶级作品中,无论哪一个低于顶部作品,都不起作用或抛出错误。我通过linter运行整个脚本没有任何问题。

以下是两个具有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>

1 个答案:

答案 0 :(得分:1)

请试试这个:

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方法提取它