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

495
Views
¿Cómo activar la actualización en una página desde otra página (sin redirección)?

Entonces, lo que tengo son muchas páginas como esta, con parámetros GET: benchmark.php?game_id=87 que muestran la información sobre el juego en particular (la información está en una base de datos) y también contiene un botón Editar.

El botón Editar abre una nueva ventana usando JS window.open("edit_game.php?game_id=87",...) La ventana Editar contiene algunos cuadros de texto para agregar/modificar datos y un botón Guardar.

El comportamiento deseado aquí es que cuando presiono el botón Guardar en la página edit_game.php , no solo la información se guarda en la base de datos (esto funciona), sino que también se actualiza la página benchmark.php?game_id=87 para que el la información mostrada es real. No sé cómo hacer 'enviar en la página x, la página y es consciente y se actualiza'.

Supongo que debería usar AJAX para esto, pero no sé por dónde empezar. Lo que probé es algo como esto.

 setInterval( function(){ $('#refresh_station').load('game_information.php'); }, 2000);

que cada 2 segundos refresca la información presente en benchmark.php?game_id=87 pero encuentro esto muy ineficiente ya que refresca la información incluso si no ocurrieron modificaciones.

¿Es esta la única manera de abordar esta situación?

Editar: debo mencionar que no se supone que edit_game.php?game_id=87 se cierre ni nada después de presionar Guardar. Así que no puedo simplemente usar el formulario de envío para redirigir de nuevo a benchmark.php .

about 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Sí, debe usar Ajax para que también agregue un campo en la tabla de la base de datos last_update, ahora cuando la página edit_game.php?game_id=87 la carga tiene la hora de la última_actualización, ajax verifica esta última actualización en algún intervalo de tiempo si ajax ve que hay alguna página de actualización debería refrescarse

about 4 years ago · Santiago Trujillo Report

0

En mi opinión, ejecutar un ciclo que verifica cada pocos segundos si los registros han cambiado no es la mejor solución. Hay una manera mucho más fácil de activar una actualización de página cuando envía un formulario en una ventana emergente.

Con window.opener puede realizar acciones en la ventana que abrió la ventana emergente en la que se encuentra actualmente. En su caso:

 <form onsubmit="window.opener.location.reload();"> Your form here. <input type="submit" value="Save changes"> </form>

O en jQuery:

 $('form').submit(function() { window.opener.location.reload(); });
about 4 years ago · Santiago Trujillo Report

0

https://jsfiddle.net/yqv1eh8w/1/

 postMessage

puede comunicarse con la ventana secundaria. Enlace

 window.addEventListener("message", function (event) {});

te permitirá escucharlo desde una ventana infantil.

Esto debería ayudarte con lo que quieres. Todo se comunica con la ayuda de eventos y mensajes.

Además, deberá ejecutar esto localmente (porque abrí ventanas emergentes en la misma ventana)

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!