Ответ 1
window.location.href = "page2.php";
это сработало. Infact, relative и absolute работают одинаково:
window.location.href = "http://www.google.com";
// or
window.location.href = "page2.html";
Я работаю над javascript/jquery на php-сайте, и мне нужно перенаправить страницу на событие на странице.
скажем, нажав кнопку "кликнуть меня" в "page1.php"
, страница должна быть перенаправлена на "page2.php
". Это перенаправление должно выполняться с помощью javascript/jquery. Обе страницы находятся в одной папке, а код перенаправления должен использовать "ОТНОСИТЕЛЬНЫЕ ССЫЛКИ" .
Теперь я могу перенаправить, если я даю абсолютную ссылку на page2.php
, но может ли кто-нибудь дать мне знать, как сделать то же самое с относительной ссылкой?
что-то вроде:
window.location.href = 'page2.php';
спасибо.
window.location.href = "page2.php";
это сработало. Infact, relative и absolute работают одинаково:
window.location.href = "http://www.google.com";
// or
window.location.href = "page2.html";
Вы можете сделать относительное перенаправление:
document.location.href = '../'; //one level up
или
document.location.href = '/path'; //relative to domain
или в jquery...
var url = "http://stackoverflow.com";
$(location).attr('href',url);
Чтобы установить относительный путь, используйте window.location.pathname
.
Взгляните на MDN docs на window.location
:
Если я понимаю, если вы находитесь на http://example.com/path/to/page1.php, и вы нажимаете на "page2.php", вы хотели бы перенаправить http://example.com/path/to/page2.php?
Возможно, есть более разумное решение, но решает ли ваша проблема?
function relativeRedir(redir){
location.pathname = location.pathname.replace(/(.*)\/[^/]*/, "$1/"+redir);
}
Пример использования: relativeRedir ( "page1.php" );