Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

381
Visualizações
Actualización de la tabla html con ajax cuando el usuario edita la tabla

Tengo la siguiente tabla, que está escrita vacía con HTML:

 <table> </table>

Tengo js/jQuery en el lado del cliente y PHP en el lado del servidor que se usa para sondeos ajax/long. Obtengo el contenido de la tabla del servidor como json y coloco el contenido de la tabla con el método de agregar (js) a la tabla. También obtengo la marca de tiempo (fecha de la última modificación) con el objeto json cuando obtengo el contenido del servidor. Luego vuelvo a llamar al método ajax con la marca de tiempo y lo devuelvo al servidor. PHP verifica la marca de tiempo y coloca dentro de un ciclo forever while y verifica cada segundo si se insertó un nuevo registro en la base de datos o si se modificó el registro (comparando la última marca de tiempo en la base de datos con la recibida del cliente. En caso afirmativo, devuelve el contenido al cliente con la marca de tiempo y el bucle while se detienen. Y este proceso va una y otra vez entre el cliente y el servidor. Esta es una encuesta larga.

La tabla del lado del cliente es editable , por lo que el problema:

El servidor devuelve el contenido al cliente, javascript desea actualizar la tabla (eliminar cada fila y pegar las filas) Y el usuario está dentro de la tabla y edita los datos. Cuando esto sucede, los datos editados por el usuario en el cliente se perderán, porque se actualizará toda la tabla en el lado del cliente.

  1. la solución sería: no actualizar toda la tabla en el cliente, solo actualizar la fila que fue editada por otro usuario, o eliminar/agregar solo la fila/filas sin actualizar toda la tabla. Esta solución es complicada y es complicado comparar los 2 json (que obtengo del servidor y el que está en el lado del cliente en la tabla)

  2. La solución sería: esperar a que el usuario abandone la tabla con el mouse, y cuando la tabla esté 'libre de actualizar', js la actualizará (eliminará todas las filas y pegará todo lo que obtenga del servidor). La solución se puede usar con infite while loop en el lado del cliente con setiterval o settimeout. ¿Como lo harias?

Gracias.

Estaba pensando en la segunda solución:

 function TABLEFREE(){ //Returns true if the user is not inside the table SETTIMEOUT OR SETINTERVAL } function GetRowsFromServer(timestamp) { $.ajax({ url:"/getrows.php", method:"POST", data: {'timestamp' : timestamp}, dataType: "json", success:function(response){ BEFORE REMOVE THE ROWS IN TABLE I WANT TO USE INFINITE WHILE LOOP TO CHECK IF USER INSIDE THE TABLE BY CALLING TABLEFREE FUNCTION. $('.tablerow').remove(); //remove all rows from table (reset) converting json and paste the datas into table........ GetRowsFromServer(response.timestamp) //calling again the function with the recevied timestamp
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda