我试图阻止我意外删除“你确定吗?”的用户介于两者之间我单击删除按钮,它实际上转到执行删除过程的页面。
我的脚本是在PHP中,我想在JS中添加“你确定”的步骤。
我已经设置了一个按钮:
<a href='/perfil/borrarUsuario.php?usuario=$userID' data-confirm='GASP! Esta seguro de querer hacer esto?' class='confirmarBorrar'><button type='button' class='btn btn-danger btn-sm'>BORRAR USUARIO</button></a>
我有一个js文件,用于放置我添加到网站的JS的所有部分。在我可以调用的所有其他JS库文件(如jQuery)之后,它在每个页面的最底部调用。
我已将此添加到文件中:
var deleteLinks = document.querySelectorAll('.confirmarBorrar');
for (var i = 0; i < deleteLinks.length; i++) {
deleteLinks[i].addEventListener('click', function(event) {
event.preventDefault();
var choice = confirm(this.getAttribute('data-confirm'));
if (choice) {
window.location.href = this.getAttribute('href');
}
});
}
我在codepen添加了一个演示,它确实在那里工作,但在我的网站上它完全避免了JS调用,直接进入删除脚本。
控制台没有说什么,它是空白的,我已经检查过在html页面末尾正确调用了JS文件。
可能出现什么问题?
我已经检查过JS被调用了,它被称为ok。它位于<body>
标记的最后。
我确实让它工作的唯一方法就是当我在按钮之后的<script>
标签之间添加脚本,插入到php文件中时(我知道,那不行)。
我在想的是,我的.js文件中有一些内容阻止了特定的脚本工作。
该文件是+500行代码,我在那里做的是添加几个js函数。但我使用"use strict";
作为第一行代码。我评论过那条线,它仍然不起作用。
唯一的解决方法是在按钮之后插入代码。