Come per titolo, è considerata una buona pratica inserire HTML in JSON? La ragione per cui ho bisogno di fare questo è perché mi piacerebbe avere un menu a discesa personalizzato in cui la lista viene dalla input dell'utente, e il JSON assomiglia così:Inserire HTML in JSON
{ listTitle: 'Tasks', listHtml: '<ul><li></li>...</ul>' }
e ho la foreach come segue (tenere a mente questo è un messo a nudo giù la versione del mio codice, la convalida è a posto, ma per il bene di questa domanda li ho tirato fuori)
$list = /** Code to grab 'Tasks' list and its title from mysql **/;
$title = 'Tasks';
$listHtml = '';
foreach($list as $content) { $listHtml .= '<li>' . htmlspecialchars($content, ENT_QUOTES, 'UTF-8') . '</li>'; }
exit(json_encode(array(
'title' => $title, 'listHtml' => '<ul>' . $listHtml . '</ul>'
)));
la mia preoccupazione è che ci potrebbero essere alcuni caratteri speciali che potrebbero rompere la JSON String. Per favore aiuto.
È solo una stringa. Le stringhe sono supportate in JSON. Anche quelli con HTML in esso;) - vedi http://json.org/ – hakre
@andreas: la separazione della presentazione dai dati sembra essere il punto principale di formati come JSON. Intendi consentire ad altri siti web o utenti di recuperare questi dati sul lato e utilizzarli al di fuori del tuo sito web? Se è così, aggiungere in html lo rovinerà. In caso contrario, se si tratta di un feed JSON che si usa solo per aiutare a costruire le tue pagine web, allora spetterà a te. –
@bob Eh? Pensavo che la politica dei domini incrociati fosse in vigore per cose come hai detto tu? Quindi, a meno che non scriva volentieri il supporto callback sulla sceneggiatura, dovrei essere ok? Per favore chiariscimi –