I'm finding it impossible to search for a particular value within the Address Bar.
var str = window.location;
//var str = "http://www.website.com/78203/";
var x = str.search(/78203/i);
alert(x);
The above code returns nothing, and in fact kills the running of anything else (indicating an error) but nothing is thrown in the console.
If you remove the comment, it runs fine, returning a value of more than -1 (meaning it's found something).
This is obviously something I'm not understanding correctly, can someone help me out?
You should use window.location.href, because window.location is an object, not a string, and it has a search property, which contains the part of the URL that follows the ? symbol, including the ? symbol.
var str = window.location.href;
var x = str.search(/78203/i);
You can also use the String.indexOf function:
var str = window.location.href;
var x = str.indexOf('78203');
They both will return you the character position of the first occurrence of the searched string (or pattern), and if the value is not found, it will return you -1.
window.location is actually a Location object, not a string. What happens if you replace your code with var str = window.location.href?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With