Ответ 1
Вы можете использовать window.location для перенаправления браузера:
Итак, я использую jquerymobile для приложения, которое я создаю. У меня есть ссылка, что если все проверки пройдут, я бы хотел пройти, но если что-то не получится, я бы хотел перенаправить.
В jquery что-то вроде этого. Поскольку это jquerymobile, ссылка будет новым div на той же странице index.html - если это помогает.
$(#link).click(function(){
if(validation_fails) link_elsewhere;
else return true;
}
Вы можете использовать window.location для перенаправления браузера:
Вы можете использовать JavaScript native window.location
$('#link').click(function(){
if(validation_fails) {
window.location="http://this.site.com/";
}
else {
return true;
}
}
Вы можете использовать идентификатор div для окна .location для отображения div. Что-то вроде:
$(#link).click(function(){
if(validation_fails) window.location += "#<YOUR_DIV_ID>" ;
else return true;
}
$(#link).click(function(){
if(validation_fails){
var loc = window.location;
window.location = loc.protocol+"//"+loc.hostname+loc.pathname+"#somedivid";
} else return true;
}
Вам нужен дополнительный код за пределами ответа @Cybermate, потому что в противном случае вы будете продолжать добавлять хэш каждый раз, когда он терпит неудачу, например. "http://foo.com/bar#whee", затем "http://foo.com/bar#whee#whee" и т.д.
Edit: Если порт может использоваться, вы можете условно включить его:
window.location = loc.protocol + "//" + loc.hostname +
(loc.port && ":"+loc.port) +
loc.pathname + "#somedivid";