preventDefault javascript不阻止url重定向
我的html是preventDefault javascript不阻止url重定向,javascript,preventdefault,Javascript,Preventdefault,我的html是 <a class="delete" href="/FolderComment/delete/12">delete</a> 但它不工作,页面被重定向 这是一个您的选择器应该是a。删除-注意空间不足 正如所写的那样,您的回调处理程序甚至没有被调用,因为您的选择器正在查找类的元素。请删除从派生而来的,而不是具有该类的 其次,出于安全原因,如果链接指向远程资源,浏览器可能不允许劫持链接 正如@NickW所指出的,可以重定向页面本地链接(以#开头)。但是,如果您希
<a class="delete" href="/FolderComment/delete/12">delete</a>
但它不工作,页面被重定向
这是一个您的选择器应该是
a。删除
-注意空间不足
正如所写的那样,您的回调处理程序甚至没有被调用,因为您的选择器正在查找类的元素。请删除从
派生而来的
,而不是具有该类的
其次,出于安全原因,如果链接指向远程资源,浏览器可能不允许劫持链接
正如@NickW所指出的,可以重定向页面本地链接(以#
开头)。但是,如果您希望页面在没有JS的情况下正常工作,那么您可能无法做到这一点
在这种情况下,一个简单的修复方法是在加载页面时使用JS重写所有此类链接:
$('a[href^="/"]').attr('href', function(index, val) {
return '#' + val;
});
您的选择器应该是a.delete
-注意空间不足
正如所写的那样,您的回调处理程序甚至没有被调用,因为您的选择器正在查找类的元素。请删除从
派生而来的
,而不是具有该类的
其次,出于安全原因,如果链接指向远程资源,浏览器可能不允许劫持链接
正如@NickW所指出的,可以重定向页面本地链接(以#
开头)。但是,如果您希望页面在没有JS的情况下正常工作,那么您可能无法做到这一点
在这种情况下,一个简单的修复方法是在加载页面时使用JS重写所有此类链接:
$('a[href^="/"]').attr('href', function(index, val) {
return '#' + val;
});
如果您的href
前面加了#,您应该能够避免重定向。我已经分叉了您的并添加了@Alnitak的选择器更改。如果您的href
前面加了#,您应该能够避免重定向。我已经分叉了您的,并在选择器中添加了@Alnitak的更改