无法阻止使用jquery单击链接
我得到了这个html:无法阻止使用jquery单击链接,jquery,Jquery,我得到了这个html: <a href="http://www.google.com" data-ref="su1c2cess" class="Wifewriting" id="target_site_to_visit"> <span data-app-id="63" class="btn" id="visit_site" style="right:22px; top:65px; padding:5px;z-index: -99999;">VISIT SITE&
<a href="http://www.google.com" data-ref="su1c2cess" class="Wifewriting" id="target_site_to_visit">
<span data-app-id="63" class="btn" id="visit_site" style="right:22px; top:65px; padding:5px;z-index: -99999;">VISIT SITE</span>
</a>
event.preventDefault()代码>在阻止链接被触发时不起任何作用。。为什么?从文档中,我会确保您的函数返回false
从事件处理程序返回false将自动调用
event.stopPropagation()和event.preventDefault()
只要控制台和有效标记中没有错误,return false
将阻止事件的默认操作,并防止它冒泡到DOM中
$(document).ready(function(){
$('body').on('click','#target_site_to_visit',function(event){
var appName=$('#target_site_to_visit').attr('class');
var referrer=$('#target_site_to_visit').attr('data-ref');
$.post('db/update_site_viewed.php',{ name:appName, ref:referrer }, function(data){
throw new Error("AppName: "+appName);
}, 'html').error(function(data){
throw new Error("Error: "+data.responseText);
});
return false;
});
});
要使用获取的数据,请使用的回调函数中的第一个参数,该函数返回获取的数据:
$.post('db/update_site_viewed.php',{ name:appName, ref:referrer }, function(data){
console.log(data); //<-- fetched html will be displayed in the console
}, html);
$.post('db/update\u site\u viewsed.php',{name:appName,ref:referer},函数(数据){
console.log(data);//您的JS控制台中有错误吗?没有,因为它会快速切换到另一个页面……无法停止它。您可以更改链接href
,然后吗?您的代码中可能有错误导致JS无法执行。您删除了事件。preventDefault()
单击处理程序,并在就绪
函数中添加了一个返回false
?这就是缩进很重要的原因。=]
它应该与有效的标记一起工作,并且没有JS错误。\target\u site\u to\u visit
是一个锚定标记。不。即使返回false,它也不起作用。返回false是stopPropo的组合保护和防止违约。我实际上是在按链接
$.post('db/update_site_viewed.php',{ name:appName, ref:referrer }, function(data){
console.log(data); //<-- fetched html will be displayed in the console
}, html);