2012-02-29 12 views
10

Parece que no puedo encontrar ninguna documentación detallada sobre getParameterByName(). He buscado en Mozilla, Google y aquí. ¿Me estoy perdiendo de algo?Documentación de Javascript en getParameterByName?

+4

Dónde encontraste un procedimiento de este tipo? ¿Qué se supone que haga? –

+0

Es una función y la leí mal. Estaba intentando ver cómo recopilar información de una cadena de consulta. – Dandy

+0

Quiso decir 'getElementsByTagName' o el método DOMElement' getAttribute' – silly

Respuesta

5

No hay una función integrada con este nombre.

Aunque eche un vistazo a How can I get query string values in JavaScript?, tal vez esa sea la función que está buscando. Devuelve el parámetro querystring con un nombre de pila.

+0

Wow ... esto es lo que estaba buscando para obtener más información. Acabo de leerlo mal. ¡Gracias por la rápida respuesta! – Dandy

0

porque no existe. Creo que quieres ver: getElementsByTagName? si no proporciona más información de qué tipo de método busca

9

Usamos esto donde trabajo. Al igual que en la solución de ThiefMaster ...

function getParameterByName(name){ 
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
    var regexS = "[\\?&]"+name+"=([^&#]*)"; 
    var regex = new RegExp(regexS); 
    var results = regex.exec(window.location.href); 
    if(results == null) 
    return ""; 
    else 
    return decodeURIComponent(results[1].replace(/\+/g, " ")); 
} 
+1

LOL - estaba trabajando en código heredado, encontré esta función y estaba buscando lo que era ... lo remonté hasta usted. Así que aquí están sus puntos de representante :-) – jmadsen

2

Es necesario añadir validación de nombre no es nulo/indefinido

function getParameterByName(name) { 
    if (name !== "" && name !== null && name != undefined) { 
     name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
     var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
      results = regex.exec(location.search); 
     return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
    } else { 
     var arr = location.href.split("/"); 
     return arr[arr.length - 1]; 
    } 

}