Ci sono un sacco di domande su Stack Overflow sul fatto che AJAX debba restituire JSON o HTML, e la maggior parte sembra concordare sul fatto che sia ideale restituire JSON per motivi di velocità. Tuttavia, questo significa che se mi degrado con grazia, avrò un codice duplicato perché sto generando lo stesso markup sia in PHP che in Javascript.
Un esempio ipotetico: Un sito web ha una lista di collegamenti a racconti. Se l'utente ha Javascript, fare clic su uno di questi link carica la storia senza un aggiornamento della pagina. Questo viene fatto con una richiesta AJAX che restituisce un JSON con le informazioni sulla storia. Javascript genera il markup per la storia. Se l'utente non ha Javascript, quindi cliccando sullo stesso link ricarica la pagina con la storia ora caricata. PHP genera il markup per la storia.
Esiste una soluzione per utilizzare JSON e degradare con garbo senza duplicare il codice?