Domanda

In un sito di e-commerce, quando aggiungo un articolo a un carrello, vorrei mostrare una finestra popup con le opzioni che puoi scegliere. Immagina di ordinare un iPod shuffle e ora devi scegliere il colore e il testo per incidere.

Vorrei che la finestra fosse modale, quindi sto usando un Lightbox popolato da una chiamata Ajax. Ora ho due opzioni:

Opzione 1: inviare solo i dati e generare il markup HTML utilizzando JavaScript

La cosa bella di questo è che riduce la richiesta AJAX al minimo dell'orso e non mescola i dati con il markup.

Ciò che non è così eccezionale in questo è che ora devo usare JavaScript per fare il mio rendering, invece di avere un motore modello sul lato server. Potrei essere in grado di ripulire un po 'l'approccio usando Una soluzione di modelli sul lato client.

Opzione 2: Invia il markup HTML

La cosa buona di questo è che posso avere lo stesso motore di modelli sul lato server che sto usando per il resto delle mie attività di rendering (Django), fare il rendering del Lightbox. JavaScript viene utilizzato solo per inserire il frammento HTML nella pagina. Quindi lascia chiaramente il rendering al motore di rendering. Per me ha senso.

Ma non mi sento a mio agio a miscelare dati e markup in una chiamata Ajax per qualche motivo. Non sono sicuro di cosa mi faccia sentire a disagio al riguardo. Voglio dire, è lo stesso modo in cui ogni pagina web viene servita - dati più markup - giusto?

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top