Получить текущий URL с помощью JavaScript? - PullRequest
2767 голосов
/ 23 июня 2009

Все, что я хочу, это получить URL веб-сайта. Не тот URL, который взят из ссылки. При загрузке страницы мне нужно иметь возможность получить полный, текущий URL-адрес веб-сайта и установить его как переменную для использования, как мне угодно.

Ответы [ 20 ]

10 голосов
/ 19 декабря 2013
var currentPageUrlIs = "";
if (typeof this.href != "undefined") {
       currentPageUrlIs = this.href.toString().toLowerCase(); 
}else{ 
       currentPageUrlIs = document.location.toString().toLowerCase();
}

Приведенный выше код также может помочь кому-то

8 голосов
/ 03 ноября 2017

Добавление результата для быстрого ознакомления

window.location;

 Location {href: "/1149633/poluchit-tekuschii-url-s-pomoschy-javascript",
 ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ, …}

document.location

  Location {href: "/1149633/poluchit-tekuschii-url-s-pomoschy-javascript", 
ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ
, …}

window.location.pathname

"/questions/1034621/get-the-current-url-with-javascript"

window.location.href

"/1149633/poluchit-tekuschii-url-s-pomoschy-javascript"

location.hostname

"stackoverflow.com"
7 голосов
/ 06 сентября 2014

Для полного URL со строками запроса:

document.location.toString().toLowerCase();

Для URL хоста:

window.location
4 голосов
/ 29 сентября 2015

Способ получения объекта текущего местоположения: window.location.

Сравните это с document.location, который первоначально возвращал только текущий URL в виде строки. Вероятно, чтобы избежать путаницы, document.location был заменен на document.URL.

И все современные браузеры отображают document.location на window.location.

На самом деле, для обеспечения безопасности между браузерами, вы должны использовать window.location вместо document.location.

4 голосов
/ 12 апреля 2016

В jstl мы можем получить доступ к текущему URL-пути, используя pageContext.request.contextPath. Если вы хотите сделать Ajax-вызов, используйте следующий URL.

url = "${pageContext.request.contextPath}" + "/controller/path"

Пример: для страницы http://stackoverflow.com/posts/36577223 это даст http://stackoverflow.com/controller/path.

0 голосов
/ 09 октября 2018

Во-первых, проверьте, что страница полностью загружена в

browser,window.location.toString();

window.location.href

затем вызвать функцию, которая принимает URL, переменную URL и печатает на консоли,

$(window).load(function(){
   var url = window.location.href.toString();
   var URL = document.URL;
   var wayThreeUsingJQuery = $(location).attr('href');
   console.log(url);
   console.log(URL);
   console.log(wayThreeUsingJQuery );
});
0 голосов
/ 30 июня 2018

, если вы ссылаетесь на конкретную ссылку с id , этот код может вам помочь.

$(".disapprove").click(function(){
                      var id = $(this).attr("id");

                      $.ajax({
                          url: "<?php echo base_url('index.php/sample/page/"+id+"')?>",
                          type: "post",
                          success:function()
                          {
                            alert("The Request has been Disapproved");
                            window.location.replace("http://localhost/sample/page/"+id+"");
                          }
                      });
                });

Я использую здесь ajax для отправки идентификатора и перенаправления страницы, используя window.location.replace . просто добавьте атрибут id="" как указано.

0 голосов
/ 14 марта 2017

Вы можете получить полную ссылку на текущую страницу через location.href и чтобы получить ссылку текущего контроллера, используйте:

location.href.substring(0, location.href.lastIndexOf('/'));
0 голосов
/ 26 декабря 2017

Получение текущего URL с помощью JavaScript:

  • window.location.toString ();

  • window.location.href

0 голосов
/ 06 апреля 2017
   location.origin+location.pathname+location.search+location.hash;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...