I am using jQuery. How do I get the path of the current URL and assign it to a variable?
Example URL:
http://localhost/menuname.de?foo=bar&number=0
To get the path, you can use:
var pathname = window.location.pathname; // Returns path only (/path/example.html)
var url = window.location.href; // Returns full URL (https://example.com/path/example.html)
var origin = window.location.origin; // Returns base URL (https://example.com)
Answered 2023-09-20 20:59:49
In pure jQuery style:
$(location).attr('href');
The location object also has other properties, like host, hash, protocol, and pathname.
Answered 2023-09-20 20:59:49
.attr()
on location. (1) It's not an element, so $(location)
is shady at best, and (2) even if it worked, you should be using .prop()
to get properties. .attr()
is for HTML attributes. - anyone http://www.refulz.com:8082/index.php#tab2?foo=789
Property Result
------------------------------------------
host www.refulz.com:8082
hostname www.refulz.com
port 8082
protocol http:
pathname index.php
href http://www.refulz.com:8082/index.php#tab2
hash #tab2
search ?foo=789
var x = $(location).attr('<property>');
This will work only if you have jQuery. For example:
<html>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<script>
$(location).attr('href'); // http://www.refulz.com:8082/index.php#tab2
$(location).attr('pathname'); // index.php
</script>
</html>
Answered 2023-09-20 20:59:49
/index.php
instead of index.php
for the pathname. - anyone attr
is supposed to only be used on DOM objects, for things which can be set by using HTML attributes. - anyone If you need the hash parameters present in the URL, window.location.href
may be a better choice.
window.location.pathname
=> /search
window.location.href
=> www.website.com/search#race_type=1
Answered 2023-09-20 20:59:49
window.location.hash
- anyone You'll want to use JavaScript's built-in window.location
object.
Answered 2023-09-20 20:59:49
window.location.pathname
does not retrieve anything after the ?
- anyone Just add this function in JavaScript, and it will return the absolute path of the current path.
function getAbsolutePath() {
var loc = window.location;
var pathName = loc.pathname.substring(0, loc.pathname.lastIndexOf('/') + 1);
return loc.href.substring(0, loc.href.length - ((loc.pathname + loc.search + loc.hash).length - pathName.length));
}
I hope it works for you.
Answered 2023-09-20 20:59:49
var pathName = loc.pathname.substring(0, loc.pathname.lastIndexOf('/'));
- anyone window.location is an object in javascript. it returns following data
window.location.host #returns host
window.location.hostname #returns hostname
window.location.path #return path
window.location.href #returns full current url
window.location.port #returns the port
window.location.protocol #returns the protocol
in jquery you can use
$(location).attr('host'); #returns host
$(location).attr('hostname'); #returns hostname
$(location).attr('path'); #returns path
$(location).attr('href'); #returns href
$(location).attr('port'); #returns port
$(location).attr('protocol'); #returns protocol
Answered 2023-09-20 20:59:49
windo.location.origin
? - anyone This is a more complicated issue than many may think. Several browsers support built-in JavaScript location objects and associated parameters/methods accessible through window.location
or document.location
. However, different flavors of Internet Explorer (6,7) don't support these methods in the same way, (window.location.href
? window.location.replace()
not supported) so you have to access them differently by writing conditional code all the time to hand-hold Internet Explorer.
So, if you have jQuery available and loaded, you might as well use jQuery (location), as the others mentioned because it resolves these issues. If however, you are doing-for an example-some client-side geolocation redirection via JavaScript (that is, using Google Maps API and location object methods), then you may not want to load the entire jQuery library and write your conditional code that checks every version of Internet Explorer/Firefox/etc.
Internet Explorer makes the front-end coding cat unhappy, but jQuery is a plate of milk.
Answered 2023-09-20 20:59:49
This will also work:
var currentURL = window.location.href;
Answered 2023-09-20 20:59:49
java-script provides many methods to retrieve current URL which is displayed in browser's address bar.
Test URL :
http://
stackoverflow.com/questions/5515310/get-current-url-with-jquery/32942762
?
rq=1&page=2&tab=active&answertab=votes
#
32942762
resourceAddress.hash();
console.log('URL Object ', webAddress);
console.log('Parameters ', param_values);
Function:
var webAddress = {};
var param_values = {};
var protocol = '';
var resourceAddress = {
fullAddress : function () {
var addressBar = window.location.href;
if ( addressBar != '' && addressBar != 'undefined') {
webAddress[ 'href' ] = addressBar;
}
},
protocol_identifier : function () { resourceAddress.fullAddress();
protocol = window.location.protocol.replace(':', '');
if ( protocol != '' && protocol != 'undefined') {
webAddress[ 'protocol' ] = protocol;
}
},
domain : function () { resourceAddress.protocol_identifier();
var domain = window.location.hostname;
if ( domain != '' && domain != 'undefined' && typeOfVar(domain) === 'string') {
webAddress[ 'domain' ] = domain;
var port = window.location.port;
if ( (port == '' || port == 'undefined') && typeOfVar(port) === 'string') {
if(protocol == 'http') port = '80';
if(protocol == 'https') port = '443';
}
webAddress[ 'port' ] = port;
}
},
pathname : function () { resourceAddress.domain();
var resourcePath = window.location.pathname;
if ( resourcePath != '' && resourcePath != 'undefined') {
webAddress[ 'resourcePath' ] = resourcePath;
}
},
params : function () { resourceAddress.pathname();
var v_args = location.search.substring(1).split("&");
if ( v_args != '' && v_args != 'undefined')
for (var i = 0; i < v_args.length; i++) {
var pair = v_args[i].split("=");
if ( typeOfVar( pair ) === 'array' ) {
param_values[ decodeURIComponent( pair[0] ) ] = decodeURIComponent( pair[1] );
}
}
webAddress[ 'params' ] = param_values;
},
hash : function () { resourceAddress.params();
var fragment = window.location.hash.substring(1);
if ( fragment != '' && fragment != 'undefined')
webAddress[ 'hash' ] = fragment;
}
};
function typeOfVar (obj) {
return {}.toString.call(obj).split(' ')[1].slice(0, -1).toLowerCase();
}
EX: With default port numbers
<protocol>//<hostname>:<port>/<pathname><search><hash>
https://en.wikipedia.org:443/wiki/Pretty_Good_Privacy
http://stackoverflow.com:80/
Domain names are which you register by the rules and procedures of the Domain Name System(DNS) tree. DNS servers of someone who manages your domain with IP-Address for addressing purposes. In DNS server hierarchy the Root name of an stackoverlfow.com is com.
gTLDs - com « stackoverflow (OR) in « co « google
Local system you have to maintain domain's which are not PUBLIC in Host Files.
localhost.yash.com « localhsot - subdomain(
web-server
), yash.com - maindomain(
Proxy-Server
).
myLocalApplication.com 172.89.23.777
If parameter has an Epoch ?date=1467708674
then use.
var epochDate = 1467708674; var date = new Date( epochDate );
Authentication url with username:password, If usernaem/password contains @ symbol
like:
Username = `my_email@gmail`
Password = `Yash@777`
then You need to URL encode the @
as %40
. Refer...
http://my_email%40gmail.com:Yash%40777@www.my_site.com
encodeURI()
(vs) encodeURIComponent()
example
var testURL = "http:my_email@gmail:Yash777@//stackoverflow.com?tab=active&page=1#32942762";
var Uri = "/:@?&=,#", UriComponent = "$;+", Unescaped = "(-_.!~*')"; // Fixed
var encodeURI_Str = encodeURI(Uri) +' '+ encodeURI( UriComponent ) +' '+ encodeURI(Unescaped);
var encodeURIComponent_Str = encodeURIComponent( Uri ) +' '+ encodeURIComponent( UriComponent ) +' '+ encodeURIComponent( Unescaped );
console.log(encodeURI_Str, '\n', encodeURIComponent_Str);
/*
/:@?&=,# +$; (-_.!~*')
%2F%3A%40%3F%26%3D%2C%23 %2B%24%3B (-_.!~*')
*/
Answered 2023-09-20 20:59:49
You can log window.location and see all the options, for just the URL use:
window.location.origin
for the whole path use:
window.location.href
there's also location.__
.host
.hostname
.protocol
.pathname
Answered 2023-09-20 20:59:49
This will return the absolute URL of the current page using JavaScript/jQuery.
document.URL
$("*").context.baseURI
location.href
Answered 2023-09-20 20:59:49
All browsers support Javascript window object. It defines the window of the browser.
The global objects and functions become part of the window object automatically.
All global variables are window objects properties and all global functions are its methods.
The whole HTML document is a window property too.
So you can use window.location object to get all url related attributes.
Javascript
console.log(window.location.host); //returns host
console.log(window.location.hostname); //returns hostname
console.log(window.location.pathname); //return path
console.log(window.location.href); //returns full current url
console.log(window.location.port); //returns the port
console.log(window.location.protocol) //returns the protocol
JQuery
console.log("host = "+$(location).attr('host'));
console.log("hostname = "+$(location).attr('hostname'));
console.log("pathname = "+$(location).attr('pathname'));
console.log("href = "+$(location).attr('href'));
console.log("port = "+$(location).attr('port'));
console.log("protocol = "+$(location).attr('protocol'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
Answered 2023-09-20 20:59:49
I have this to strip out the GET variables.
var loc = window.location;
var currentURL = loc.protocol + '//' + loc.host + loc.pathname;
Answered 2023-09-20 20:59:49
If there is someone who wants to concatenate the URL and hash tag, combine two functions:
var pathname = window.location.pathname + document.location.hash;
Answered 2023-09-20 20:59:49
You can simply get your path using js itself, window.location
or location
will give you the object of current URL
console.log("Origin - ",location.origin);
console.log("Entire URL - ",location.href);
console.log("Path Beyond URL - ",location.pathname);
Answered 2023-09-20 20:59:49
Here is an example to get the current URL using jQuery and JavaScript:
$(document).ready(function() {
//jQuery
$(location).attr('href');
//Pure JavaScript
var pathname = window.location.pathname;
// To show it in an alert window
alert(window.location);
});
$.getJSON("idcheck.php?callback=?", { url:$(location).attr('href')}, function(json){
//alert(json.message);
});
Answered 2023-09-20 20:59:49
var path = location.pathname
returns the path of the current URL (jQuery is not needed). The use of window.location
is optional.
Answered 2023-09-20 20:59:49
To get the URL of the parent window from within an iframe:
$(window.parent.location).attr('href');
NB: only works on same domain
Answered 2023-09-20 20:59:49
window.location will give you the current URL, and you can extract whatever you want from it...
Answered 2023-09-20 20:59:49
If you want to get the path of the root site, use this:
$(location).attr('href').replace($(location).attr('pathname'),'');
Answered 2023-09-20 20:59:49
.replace('#.*', '')
? Remove not just the hash mark but everything after it as well? - anyone See purl.js. This will really help and can also be used, depending on jQuery. Use it like this:
$.url().param("yourparam");
Answered 2023-09-20 20:59:49
Very Commonly Used top 3 ones are
1. window.location.hostname
2. window.location.href
3. window.location.pathname
Answered 2023-09-20 20:59:49
var newURL = window.location.protocol + "//" + window.location.host + "/" + window.location.pathname;
Answered 2023-09-20 20:59:49
By the following code you can get the current URL in Jquery.
$(location).attr('hostname'); //origin URL
$(location).attr('pathname'); // path name
$(location).attr('hash'); // everything comes after hash
Answered 2023-09-20 20:59:49
In jstl we can access current url path using pageContext.request.contextPath
, If you want to do a ajax call,
url = "${pageContext.request.contextPath}" + "/controller/path"
Ex: in the page http://stackoverflow.com/questions/406192
this will give http://stackoverflow.com/controller/path
Answered 2023-09-20 20:59:49
// get current URL
$(location).attr('href');
var pathname = window.location.pathname;
alert(window.location);
Answered 2023-09-20 20:59:49