How to get route parameter in JavaScript?
asp.net, c#, javascript, jquery, url-rewriting
Solution
function getValueAtIndex(index){
var str = "http://www.sample.com/234/Fiddle/test"; //window.location.href;
return str.split("/")[index];
}
console.log(getValueAtIndex(3));
Update
Here's a much cleaner way of getting value at an index in the route using plain JS:
location.pathname.split('/')[index]
For example, for the current page,
location.pathname = '/questions/20302776/how-to-get-route-parameter'
You can get the question id by doing:
location.pathname.split('/')[2]
// Notice that the index does not start from zero.
Problem
I have a ASP.NET website that is URL-Rewriting enabled. I know how to get route parameters using C#: ``` Page.RouteData.Values["id"] as string; ``` But I don't know how to get it from javascript? Following is my rewritten link format: http://www.domain.com/topic/{id}/{title} I want to get this {id} field using JavaScript. Please help! UPDATE I have this code that gets request parameter. ``` function getParameterByName(name) { name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]"); var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), results = regex.exec(location.search); return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); } ``` How can this be modified to get route parameter?