Página Ajax echo vs fondo Ajax/directo HTML manipulación?
-
27-10-2019 - |
Pregunta
Tengo un dilema, y yo realmente podría utilizar algunos consejos.Yo soy la construcción de un sistema de pedidos con PHP/Smarty/HTML/jQuery.Actualmente trabajando en el sitio donde el vendedor deberá confirmar los pedidos.
Necesito tener 3 divs.
- A la espera de órdenes de div - contiene una tabla con los pedidos no servidos
- Los últimos pedidos div - contiene una tabla con el último órdenes procesadas (10-20 filas)
- Detalles div - contiene información acerca de la orden, y los botones para confirmar/rechazar
Se trata de un típico maestro-detalle de la situación, sólo el maestro está dividida en 2 partes (1,2) y los detalles es en div 3.Naturalmente, todo está conectado con javascript/Ajax por lo que el usuario puede obtener el "tiempo real" de la sensación.A la espera de órdenes div se llena a través de una cometa (long-polling) de la técnica.
Mi dilema es cómo conectar los divs con javascript/ajax.Debo hacer eco de las páginas que corresponden a la base de datos de estado y de carga completamente en divs.O debo manipular sólo las filas de la tabla y el uso de ajax sólo para el fondo db llamadas?
Para hacerme más claro:
Opción 1 (Ajax páginas completas):
- cuando el usuario selecciona la sala de espera de la orden, una nueva página (se hizo eco de la tabla) se obtienen con ajax y se cargan en los detalles div
- cuando el usuario confirma/disminuye el orden en div 3, div 1 y 2 se actualiza con ajax (echo páginas con tablas que corresponden al estado en db)
Opción 2 (html de manipulación/de fondo Ajax):
- cuando el usuario selecciona la sala de espera de la orden, los elementos de div 3 están llenos con el nuevo valor.
- cuando el usuario confirma/disminuye en el orden en div3, tr de la tabla en div 1 se elimina (fondo de ajax a del db) y el mismo tr se agrega en div 2 (fondo de ajax para insertar en db)
Así que camino a seguir?
Solución
Ambas formas son acceptabale, pero nr 1 es menos amigable para el usuario, porque de recarga div 1&2.Cuando se carga algo en div 3, tiene su id, por lo que debe ser un problema para copiar / anexar tr (y añadir color, por lo que el usuario sabe lo que pasó).
Si usted elige 2 recuerde separar / bind nuevas acciones para su tr elementos, porque cuando usted mueve su tr a otro lugar no va a desencadenar acciones que se unen antes.
Probablemente voy a ir con 2 yo ;)
PS.Añadir superposición con ajax loader (http://ajaxload.info/), para estar en el lado seguro de usuario interuptions, mientras la carga de datos en div 3.El usuario será más feliz así, porque él sabrá que algo está pasando ;)