De huidige URL ophalen met JavaScript?

Het enige wat ik wil, is de website-URL krijgen. Niet de URL zoals overgenomen van een link. Bij het laden van de pagina moet ik de volledige, huidige URL van de website kunnen pakken en deze als een variabele kunnen instellen om mee te doen wat ik wil.


Antwoord 1, autoriteit 100%

Gebruik:

window.location.href

Zoals vermeld in de opmerkingen, werkt de onderstaande regel, maar is er bugs voor Firefox.

document.URL

Zie URL van het type DOMString, alleen-lezen.


Antwoord 2, autoriteit 19%

Toegang tot URL-informatie

JavaScript biedt u vele methoden om de huidige URL op te halen en te wijzigen, die wordt weergegeven in de adresbalk van de browser. Al deze methoden gebruiken het object Location, wat een eigenschap is van het object Window. U kunt als volgt een nieuw Location-object met de huidige URL maken:

var currentLocation = window.location;

Basis URL-structuur

<protocol>//<hostname>:<port>/<pathname><search><hash>
  • protocol:Specificeert de protocolnaam die moet worden gebruikt om toegang te krijgen tot de bron op internet. (HTTP (zonder SSL) of HTTPS (met SSL))

  • hostnaam:hostnaam specificeert de host die eigenaar is van de bron. Bijvoorbeeld www.stackoverflow.com. Een server levert diensten met behulp van de naam van de host.

  • poort:een poortnummer dat wordt gebruikt om een specifiek proces te herkennen waarnaar een internet- of ander netwerkbericht moet worden doorgestuurd wanneer het op een server aankomt.

  • padnaam:Het pad geeft informatie over de specifieke bron binnen de host waartoe de webclient toegang wil. Bijvoorbeeld /index.html.

  • zoeken:een zoekreeks volgt de padcomponent en levert een reeks informatie die de bron voor een bepaald doel kan gebruiken (bijvoorbeeld als parameters voor een zoekopdracht of als gegevens om verwerkt worden).

  • hash:het ankergedeelte van een URL, inclusief het hekje (#).

Met deze Location-objecteigenschappen hebt u toegang tot al deze URL-componenten en wat ze kunnen instellen of retourneren:

  • href– de volledige URL
  • protocol– het protocol van de URL
  • host– de hostnaam en poort van de URL
  • hostnaam– de hostnaam van de URL
  • poort– het poortnummer dat de server gebruikt voor de URL
  • padnaam– de padnaam van de URL
  • zoeken– het zoekgedeelte van de URL
  • hash– het ankergedeelte van de URL

Ik hoop dat je je antwoord hebt gekregen..


Antwoord 3, autoriteit 8%

Gebruik window.locationvoor lees- en schrijftoegang tot de locatie-objectgekoppeld aan het huidige frame. Als u het adres alleen als een alleen-lezen tekenreeks wilt krijgen, kunt u document.URLgebruiken, die dezelfde waarde moet bevatten als window.location.href.


Antwoord 4, autoriteit 7%

Krijgt de huidige pagina-URL:

window.location.href

Antwoord 5, autoriteit 2%

OK, het verkrijgen van de volledige URLvan de huidige pagina is eenvoudig met puur JavaScript. Probeer bijvoorbeeld deze code op deze pagina:

window.location.href;
// use it in the console of this page will return
// http://stackoverflow.com/questions/1034621/get-current-url-in-web-browser"

De eigenschap window.location.hrefretourneert de URL van de huidige pagina.

document.getElementById("root").innerHTML = "The full URL of this page is:<br>" + window.location.href;
<!DOCTYPE html>
<html>
<body>
  <h2>JavaScript</h2>
  <h3>The window.location.href</h3>
  <p id="root"></p>
</body>
</html>

Antwoord 6

Om het pad te krijgen, kunt u het volgende gebruiken:

console.log('document.location', document.location.href);
console.log('location.pathname',  window.location.pathname); // Returns path only
console.log('location.href', window.location.href); // Returns full URL

Antwoord 7

Open Developer Tools, typ het volgende in de consoleen druk op Enter.

window.location

Bijvoorbeeld: hieronder is de schermafbeelding van het resultaat op de huidige pagina.

voer hier de afbeeldingsbeschrijving in

Pak hier wat je nodig hebt. 🙂


Antwoord 8

Gebruik: window.location.href.

Zoals hierboven vermeld, wordt document.URLniet bijgewerktbij het bijwerken van window.location. Zie MDN.


Antwoord 9

  • Gebruik window.location.hrefom de volledige URL te krijgen.
  • Gebruik window.location.pathnameom de URL de host te laten verlaten.

Antwoord 10

Je kunt de huidige URL-locatie ophalen met een hash-tagmet :

JavaScript:

// Using href
 var URL = window.location.href;
 // Using path
 var URL = window.location.pathname;

jQuery:

$(location).attr('href');

Antwoord 11

var currentPageUrlIs = "";
if (typeof this.href != "undefined") {
       currentPageUrlIs = this.href.toString().toLowerCase(); 
}else{ 
       currentPageUrlIs = document.location.toString().toLowerCase();
}

De bovenstaande code kan ook iemand helpen


Antwoord 12

Resultaat toevoegen voor snelle referentie

venster.locatie;

Location {href: "https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript",
 ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ, …}

document.locatie

 Location {href: "https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript", 
ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ
, …}

window.location.pathname

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

window.location.href

"https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript"

locatie.hostnaam

"stackoverflow.com"

Antwoord 13

Voor volledige URL met zoekreeksen:

document.location.toString()

Voor host-URL:

window.location

Antwoord 14

Voor degenen die een echt URL-object willen, mogelijk voor een hulpprogramma dat URL’s als argument gebruikt:

const url = new URL(window.location.href)

https://developer.mozilla.org/en-US/ docs/Web/API/URL


Antwoord 15

Nikhil Agrawal’s antwoord is geweldig, voeg hier een klein voorbeeld toe dat je in de console kunt doen om de verschillende componenten in actie te zien:

voer hier de afbeeldingsbeschrijving in

Als u wilt dat de basis-URL zonder pad- of queryparameter (bijvoorbeeld om AJAX-verzoeken tegen te doen om te werken op zowel ontwikkelings-/staging- EN productieservers), is window.location.originhet beste omdat het behoudt het protocol en de optionele poort (in de ontwikkeling van Django heb je soms een niet-standaard poort die deze verbreekt als je alleen de hostnaam enz. gebruikt)


Antwoord 16

In jstl hebben we toegang tot het huidige URL-pad met pageContext.request.contextPath. Als je een Ajax-oproep wilt doen, gebruik dan de volgende URL.

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

Voorbeeld: voor de pagina http://stackoverflow.com/posts/36577223geeft dit http://stackoverflow.com/controller/path.


Antwoord 17

De manier om het huidige locatie-object te krijgen is window.location.

Vergelijk dit met document.location, dat oorspronkelijk alleen de huidige URL als een tekenreeks retourneerde. Waarschijnlijk om verwarring te voorkomen, is document.locationvervangen door document.URL.

En alle moderne browsers wijzen document.locationtoe aan window.location.

In werkelijkheid zou je voor cross-browser veiligheid window.locationmoeten gebruiken in plaats van document.location.


Antwoord 18

location.origin+location.pathname+location.search+location.hash;

en

location.href

doet hetzelfde.


Antwoord 19

Je kunt de volledige link van de huidige pagina krijgen via location.href
en om de link van de huidige controller te krijgen, gebruik:

location.href.substring(0, location.href.lastIndexOf('/'));

Antwoord 20

Je hebt meerdere manieren om dit te doen.

1:

location.href;

2:

document.URL;

3:

document.documentURI;

Antwoord 21

Gebruik dit:

var url = window.location.href;
console.log(url);

Antwoord 22

De huidige URL ophalen met JavaScript :

  • window.location.toString();

  • window.location.href


Antwoord 23

Probeer

location+''

Antwoord 24

als je verwijst naar een specifieke link met een idkan deze code je helpen.

$(".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+"");
        }
    });
});

Ik gebruik hier ajax om een id in te dienen en de pagina om te leiden met behulp van window.location.replace. voeg gewoon een attribuut id=""toe zoals vermeld.


Antwoord 25

Controleer eerst of de pagina volledig is geladen in

browser,window.location.toString();
window.location.href

roep vervolgens een functie aan die url, URL-variabele nodig heeft en wordt afgedrukt op de console,

$(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 );
});

Other episodes