Mi inglés no es bueno. perdón.
Ejemplo de dirección URL:
ejemplo.com/action.php?id=1&name=JOHN&email=JONH@EXAMPLE.COM
Solo quiero cambiar el "nombre":
ejemplo.com/action.php?id=1&name=JACK &email=JONH@EXAMPLE.COM
por Jquery o Función de clic de JavaScript.
Encontré una solución pero no quiero escribir todo de nuevo. Quiero llamar a name=JOHN y convertirlo en name=JACK.
no quiero es:
$('.element').click(function () { window.location = 'action.php?id=1&name=JACK&email=JONH@EXAMPLE.COM'; });
Supongo que su enlace está en un href en un elemento <a> .
Cambia el valor href (o cualquier atributo) con la función JQuery attr():
element.on(“click”, function () { $(this).attr(“href”, “ example.com/action.php?id=1&name=JACK&email=JONH@EXAMPLE.COM”); });Aquí el elemento es el elemento en el que debe hacer clic, también podría ser una llamada JQuery $ ("# ID de elemento"). El objeto this se refiere en este contexto al objeto en el que se hace clic, por lo que el elemento. Si envolvemos 'esto' en un selector de JQuery, puede acceder a los métodos de JQuery en ese elemento, que sería .attr(). Consulte los documentos para obtener más documentación: https://api.jquery.com/attr/
Puede dividir la cadena por un signo de interrogación ( ? ) para obtener los parámetros, luego use el constructor URLSearchParams para analizarlo y URLSearchParams.set para establecer el parámetro de name en "JACK" :
const url = "example.com/action.php?id=1&name=JOHN&email=JONH@EXAMPLE.COM"; const split = url.split('?'); const params = new URLSearchParams(split[1]); params.set('name', 'JACK') const result = split[0] + params.toString(); console.log(result)