Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

95
Views
Mantener la URL original para pushstate

Yo uso la siguiente función:

 $( document ).ajaxComplete(function() { var currenturl = window.location.href; var decodedUri = decodeURIComponent(currenturl); var decodedUri2 =decodedUri.replace("&manufacturer[]=","/").replace("&page=","/").replace("&sort=","/").replace("&order=","/"); history.pushState("", "", decodedUri2); });

Necesito de alguna manera en cada finalización de ajax para cambiar la URL original y la URL no modificada previamente a través de pushState.

Con la función anterior en la primera finalización de ajax, pushState hace el trabajo, pero en la siguiente finalización de ajax, pushState decodedUri2 intenta reemplazar la URL modificada, pero necesito cada vez cambiar la URL original y pushState el resultado. ¿Es eso posible?

¿Alguna idea para lograr esto?

¡Gracias!

EDITAR: reformulación de la pregunta. Cada vez que se completa un ajax, se agregan algunos atributos a la URL y necesito reemplazar esos atributos. Y nuevamente lo mismo con cada solicitud de ajax. Entonces, en realidad, necesito de alguna manera cada vez que se completa una finalización de ajax para presionar el estado de la URL actual después de la finalización de ajax pero desde el estado original.

EJEMPLO : http://ocdemo.eu/desktops .

Si selecciona filtros de la columna izquierda cada vez que la URL cambia con ajax. Entonces, cada vez que necesito que la URL que se muestra sea reemplazada por otra cosa

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Para cualquiera que busque esto, que quiera aplicar pushState sin actualizar la URL de la página. Puede omitir el parámetro por completo, como se indica en los documentos:

https://developer.mozilla.org/en-US/docs/Web/API/History/pushState

Ambos funcionarán:

 history.pushState("", ""); history.pushState("", "", "");

Si está buscando cambiar un parámetro de URL en la llamada AJAX en la URL actual, hay mucha discusión en el hilo:

¿Cómo reemplazar el parámetro url con javascript/jquery?

about 4 years ago · Santiago Trujillo Report

0

Tendría que capturar esa URL en una variable y usar eso:

 var initialUrl; $( document ).ajaxComplete(function() { var currenturl = window.location.href; if (!initialUrl) { initialUrl = decodeURIComponent(currenturl); } var decodedUri2 =initialUrl.replace("&manufacturer[]=","/").replace("&page=","/").replace("&sort=","/").replace("&order=","/"); history.pushState("", "", decodedUri2); });
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!