jQuery如何在preventDefault()之后启用标记

时间:2017-10-23 18:10:07

标签: javascript php jquery html

我在使用preventDefault()点击时停止了链接/锚标记触发事件,并且在jQuery函数的中间,我想通过禁用preventDefault()来触发链接。下面你可以看到我的代码块,

jQuery(".tcf_add_to_cart a").on('click', function( e ){
e.preventDefault();
if( some condition )
{
    $.ajax({
        type : "POST",
        data : data,
        url : 'url',
        success : function( response ) {
            if ( response == 'true' )
            {
                // ENABLE THE LINK AND TRIGGER LINK ACTION                         
            }
        }
    });
}
});

如上所述,我需要启用阻止链接,什么是最好的&正确的方法来做到这一点。

2 个答案:

答案 0 :(得分:1)

您可以根据事件目标设置位置。

if ( response == 'true' ) {
  window.location.href = e.target.href
}

由于调用是异步的,因此无法取消preventDefault。

答案 1 :(得分:1)

创建隐藏链接,当您到达希望导航的位置时,将该隐藏链接与点击事件一起使用...

<a href="http://www.yourLink.com">click me</a><a href="http://www.yourLink.com" id="yourLink">&nbsp;</a>

然后在你的代码中添加:

$("#yourLink").click();

触发它。

另外,您可以隐藏链接,例如:$("#yourLink").hide();