没有警报页面没有通过jquery重定向

时间:2013-05-01 09:04:34

标签: javascript jquery

我想将我的页面重定向到我的变量中的url,但它没有警报就无法正常工作。

如果我发出警报然后重定向,否则不会。

$(document).ready(function(){
    $("a").click(function(){
    var newurl = 'http://www.xyz.com/' + $(this).attr('href');
      //$(this).attr(newurl,'href');
      window.location.href = newurl;
       alert(newurl);
    });
});
提前

thanx

锚标记

<a href="includes/footer.jsp">new url</a>

2 个答案:

答案 0 :(得分:1)

尝试以下

$(document).ready(function () {
    $("a").click(function (event) {
        var newurl = 'http://www.xyz.com/' + $(this).attr('href');
        window.location.href = newurl;
        event.preventDefault()
    });
});

您需要使用preventDefault()阻止默认事件传播。在jquery有机会更改它之前,浏览器会重定向到href。通过使用警报,您将延迟浏览器重定向,因此它似乎可以正常工作。

答案 1 :(得分:0)

preventDefault添加到事件处理程序,以防止跟踪链接中的URL:

$(document).ready(function(){
    $("a").click(function(e){
      e.preventDefault();
      var newurl = 'http://www.xyz.com/' + $(this).attr("href");
      window.location.href = newurl;
    });
});