2010-09-16 37 views
18

Tengo una URL como esta:Obtener ID de URL con jQuery

http://www.site.com/234234234 

necesito para agarrar el Id después /, por lo que en este caso 234234234

¿Cómo puedo hacer esto fácilmente?

Respuesta

35

Obtener una substring después de la last index of/.

var url = 'http://www.site.com/234234234'; 
var id = url.substring(url.lastIndexOf('/') + 1); 
alert(id); // 234234234 

Es solo JavaScript básico, no jQuery involucrado.

+2

Esto funciona genial! Pero, ¿qué pasa si hay url-cosas en el lado derecho de la url? – Tom

5
var url = "http://www.site.com/234234234" 
var stuff = url.split('/'); 
var id = stuff[stuff.length-1]; 
//id = 234234234 
1

Utilizando el jQuery URL Parser plugin, usted debería ser capaz de hacer esto:

jQuery.url.segment(1) 
+0

Me gusta esta porque la mayoría de las soluciones propuestas parecen fallar cuando hay anclas, parámetros de consulta, ... involucrados. –

29
var url = window.location.pathname; 
var id = url.substring(url.lastIndexOf('/') + 1); 
7
var full_url = document.URL; // Get current url 
var url_array = full_url.split('/') // Split the string into an array with/as separator 
var last_segment = url_array[url_array.length-1]; // Get the last part of the array (-1) 
alert(last_segment); // Alert last segment 
+0

Gracias. Semicolon falta en la segunda línea – Elnoor

1

El hecho de que puedo:

function pathName(url, a) { 
    return (a = document.createElement('a'), a.href = url, a.pathname); //optionally, remove leading '/' 
} 

pathName("http://www.site.com/234234234") -> "/234234234" 
1

probar este javascript

Fragmento para el obteniendo el parámetro rs de URL. Use javascript para obtener los parámetros de la URL desde la ubicación de la ventana actual o la URL estática en el argumento para la llamada a la función.

Javascript

function getUrlParameters(parameter, staticURL, decode){ 

     var currLocation = (staticURL.length)? staticURL : window.location.search, 
      parArr = currLocation.split("?")[1].split("&"), 
      returnBool = true; 

     for(var i = 0; i < parArr.length; i++){ 
      parr = parArr[i].split("="); 
      if(parr[0] == parameter){ 
       return (decode) ? decodeURIComponent(parr[1]) : parr[1]; 
       returnBool = true; 
      }else{ 
       returnBool = false;    
      } 
     } 

     if(!returnBool) return false; 
    } 

Para obtener el parámetro “id” desde arriba URL estática, utilice la siguiente:

var idParameter = getUrlParameters("id", "http://www.example.com?id=1234&auth=true", true); 

o

var idParameter = getUrlParameters("id", "", true); 
+1

Muy útil ... Muchas gracias – Zohaib

1

mi URL como este http://www.default-search.net/?sid=503. Quiero obtener 503. Escribí el siguiente código.

var baseUrl = (window.location).href; // You can also use document.URL 
var koopId = baseUrl.substring(baseUrl.lastIndexOf('=') + 1); 
alert(koopId)//503 

Si utiliza

var v = window.location.pathname; 
console.log(v) 

obtendrá solamente "/";

+0

esto no funcionó para mí, pero la publicación de Rohrbs anterior funcionó muy bien. – tbone