recibir por pasar parametros obtener agregar javascript html query-parameters

javascript - por - ¿Cómo paso una URL con múltiples parámetros en una URL?



pasar variables por url php post (5)

¿Te estás perdiendo el ? en la segunda URL (también, debe estar codificada para que sea %3F ).

Además, creo que el resto & necesidad de ser URL, no codificada en HTML. Cambie &second=12&third=5 a %26second=12%26third=5 y todo debería funcionar.

Esta:

&u=http://www.foobar.com/first=12&sec=25&position=2

debiera ser:

&u=http://www.foobar.com/%3Ffirst=12%26sec=25%26position=2

Básicamente estoy tratando de pasar una URL como esta:

www.foobar.com/?first=1&second=12&third=5

en una URL como esta:

http://www.facebook.com/sharer.php?&t=FOOBAR&u=http://www.foobar.com/first=12&sec=25&position=2

Solo reconoce el primer parámetro. Estoy teniendo el mismo problema con LinkedIn y Twitter, por lo que debe ser algo que estoy haciendo mal.


En jQuery, puedes usar:

var myObject = {first:1, second=12, third=5}; jQuery.param();

Doc: http://api.jquery.com/jquery.param/ La salida: primero = 1 y segundo = 12 y tercero = 5 Esto lo formateará, cualquiera que sea su objeto.


En lugar de html encoding su parámetro de URL, necesita URL encode :

http://www.facebook.com/sharer.php?&t=FOOBAR&u=http%3A%2F%2Fwww.foobar.com%2F%3Ffirst%3D12%26sec%3D25%26position%3D

Puede hacerlo fácilmente en la mayoría de los idiomas, en javascript :

var encodedParam = encodeURIComponent(''www.foobar.com/?first=1&second=12&third=5''); // encodedParam = ''http%3A%2F%2Fwww.foobar.com%2F%3Ffirst%3D12%26sec%3D25%26position%3D''

(Hay métodos equivalentes en otros idiomas también)


En su ejemplo, partes de su URL pasada no están codificadas en URL (por ejemplo, los dos puntos deben ser% 3A, las barras diagonales deben ser% 2F). Parece que ha codificado los parámetros para la URL de su parámetro, pero no la URL del parámetro en sí. Intenta codificarlo también. Puedes usar encodeURIComponent .


Tienes que escapar del carácter &. Voltea tu

&

dentro

&

y usted debe ser bueno.