Según el título, ¿se considera una buena práctica poner HTML en JSON? La razón por la que necesito hacer esto es porque me gustaría tener una lista desplegable personalizada, en la lista está viniendo de la entrada del usuario, y el JSON se ve así:Poner HTML en JSON
{ listTitle: 'Tasks', listHtml: '<ul><li></li>...</ul>' }
y tengo el foreach de la siguiente manera (mantener en cuenta que es un despojado versión de mi código, validación está en su lugar, pero por el bien de esta pregunta que los sacó)
$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>'
)));
mi preocupación es que podría haber algunos caracteres especiales que podrían romper el Cadena JSON. Por favor ayuda.
Es solo una cadena. Las cadenas son compatibles con JSON. Incluso aquellos con HTML;) - vea http://json.org/ – hakre
@andreas: la separación de la presentación de los datos parece ser el punto principal de los formatos como JSON. ¿Tiene la intención de permitir que otros sitios web o usuarios obtengan estos datos en un lado y lo utilicen _outide_ de su sitio web? Si es así, agregar html arruinará eso. De lo contrario, si se trata de un feed json que solo se utiliza para ayudar a compilar sus páginas web, entonces le corresponde a usted. –
@bob ¿Eh? Pensé que la política de dominio cruzado está en su lugar para cosas como usted mencionó? Entonces, a menos que esté dispuesto a escribir soporte de devolución de llamada en el script, ¿debería estar bien? Por favor, infórmame –