如何添加 onclick 但不在 <a> 标签中执行 href="url"?

How to add an onclick but don't execute href="url" in a <a> tag?

我想将 onclick 函数添加到 <a> 标记,其中 onclick 将 运行 而 href 不会。我读过,您需要做的就是将 return false; 添加到 onclick 函数中,如下所示:

<a href="https://google.ca" onclick="alert(1); return false;">click here!</a>

这应该创建一个警告对话框而不是跳转到 google(或者有人告诉我),但对我来说它不显示警告对话框并直接转到 google .我也试过 return true; 但同样的事情发生了。

场景是用户在文本框中输入他们想要的任何内容(可以包含一组列入白名单的 HTML 标签,包括 <a>)。在他们按下 enter 后,它会将他们带到一个新页面,并且 HTML 会反映在该页面上。我想看看他们是否可以使用 onclick 输入一个 link 到一个可能是恶意的网站,而不是去 href。

编辑:

当我检查 link 时,显示的是:

<a href="https://google.ca" rel="nofollow">click here!</a>

没有关于 onclick 函数和警报的内容。为什么去掉了 onclick?

这段代码对我也有用。这与我正在使用的网络应用程序有关,我正在尝试弄清楚是否有可能阻止来自 运行ning

的点击

你可以试试

<a href="http://google.com" onclick="alert_func()">

function alert_func(){
    alert(1);
    return false;
}