重定向使用jQuery

时间:2011-01-06 03:37:30

标签: javascript jquery html redirect mobile

所以我正在使用jquerymobile来创建我正在创建的应用程序。我有一个链接,如果所有验证通过,我想通过,但如果一些事情失败,我想重定向。

在jquery中是这样的。由于它是jquerymobile,链接将是同一index.html页面上的新div - 如果这有帮助。

$(#link).click(function(){  
  if(validation_fails) link_elsewhere;  
  else return true;
}

4 个答案:

答案 0 :(得分:13)

您可以使用window.location重定向浏览器:

https://developer.mozilla.org/en/DOM/window.location

答案 1 :(得分:13)

您可以使用JavaScript的原生 window.location

$('#link').click(function(){  

    if(validation_fails) {
        window.location="http://this.site.com/";
    }
    else {
        return true;
    }
}

答案 2 :(得分:1)

您可以将div id哈希到window.location以显示div。 类似的东西:

$(#link).click(function(){  
  if(validation_fails) window.location += "#<YOUR_DIV_ID>" ;  
  else return true;
}

答案 3 :(得分:1)

$(#link).click(function(){  
  if(validation_fails){
    var loc = window.location;
    window.location = loc.protocol+"//"+loc.hostname+loc.pathname+"#somedivid";
  } else return true;
}

除了@ Cyber​​mate的答案之外,您还需要额外的代码,否则您每次失败时都会继续添加哈希值,例如: “http://foo.com/bar#whee”,然后“”http://foo.com/bar#whee#whee“等。

修改: 如果可以使用该端口,您可以有条件地包含它:

window.location = loc.protocol + "//" + loc.hostname +
                  (loc.port && ":"+loc.port) + 
                  loc.pathname + "#somedivid";