Question

Dans un site de commerce électronique, lors de l'ajout d'un élément à un panier, je voudrais afficher une fenêtre contextuelle avec les options que vous pouvez choisir. Imaginez que vous commandez un shuffle iPod et maintenant vous devez choisir la couleur et le texte à gravir.

Je voudrais que la fenêtre soit modale, donc j'utilise un boite à lumière peuplé d'un appel Ajax. Maintenant, j'ai deux options:

Option 1: Envoyez uniquement les données et générez le balisage HTML à l'aide de JavaScript

Ce qui est bien à ce sujet, c'est qu'il baisse la demande Ajax au minimum de l'ours et ne mélange pas les données avec le balisage.

Ce qui n'est pas si génial à ce sujet, c'est que maintenant j'ai besoin d'utiliser JavaScript pour faire mon rendu, au lieu d'avoir un moteur de modèle à côté du serveur. Je pourrais peut-être nettoyer un peu l'approche en utilisant Une solution de modèles côté client.

Option 2: Envoyez le balisage HTML

Ce qui est bien à ce sujet, c'est que je peux avoir le même moteur de modèles côté serveur que j'utilise pour le reste de mes tâches de rendu (Django), faire le rendu de la LightBox. JavaScript n'est utilisé que pour insérer le fragment HTML dans la page. Il laisse donc clairement le rendu au moteur de rendu. A du sens pour moi.

Mais je ne me sens pas à l'aise de mélanger les données et de marquer dans un appel Ajax pour une raison quelconque. Je ne sais pas ce qui me rend mal à l'aise. Je veux dire, c'est de la même manière que chaque page Web est servie - Data Plus Markup - non?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top