2010-01-18 9 views
0

Quelle est la «meilleure pratique» lors du retour de données dynamiques pour une table (tri côté serveur, filtrage etc à partir d'un db)? Renvoyez-vous simplement les données dans json, et clonez plusieurs fois un élément de ligne, en remplaçant les valeurs dans chaque ligne (diminuant ainsi la taille de l'appel ajax, mais en augmentant le traitement côté client), ou renvoyez le html complet et remplacez par. html ou .append? Ou y a-t-il une autre méthode qui me manque?Meilleure méthode dans jQuery pour remplacer les lignes d'une table après le traitement côté serveur, comme le tri mysql - .html, .append, .clone ou autre?

Ceci est une situation fréquente dans mon application, et dans certains cas un goulot d'étranglement, et je ne sais pas si ce que je fais est la meilleure solution. Actuellement, je renvoie la ligne html et utilise un seul appel .append, après avoir vidé toutes les lignes à l'exception de l'en-tête.

Répondre

0

La construction du code HTML sur le serveur et l'utilisation de .html() seront beaucoup plus rapides que celles des autres méthodes que vous décrivez. Surtout si vous ajoutez plusieurs lignes, il peut être judicieux de pré-rendre le HTML sur le serveur.

Une alternative consiste à utiliser un moteur de template javascript efficace. Un bon article sur les moteurs de modèle pour le javascript est disponible ici:

http://www.west-wind.com/Weblog/posts/509108.aspx

Dans certains cas, l'aide d'un bon moteur de modèle peut être presque aussi efficace que pré-rendu HTML sur le serveur.