El siguiente bloque de código simple se puede publicar en una página HTML estática pero da como resultado un error de JavaScript. ¿Cómo se debe evitar la comilla doble incrustada en el controlador onClick (es decir, \ "xyz)? Tenga en cuenta que el HTML se genera dinámicamente extrayendo datos de una base de datos, cuyos datos son fragmentos de otro código HTML que podría tener uno o dos comillas. parece que la adición de una sola barra invertida delante del carácter de comillas dobles no hace el truco.Escape de comillas dobles en JavaScript controlador de eventos onClick
<script type="text/javascript">
function parse(a, b, c) {
alert(c);
}
</script>
<a href="#x" onclick="parse('#', false, '<a href=\"xyz'); return false">Test</a>
Acabo de probar esto en FF3.6 e IE8 en un escenario similar y no funcionó. Sin embargo, reemplazó el "con ". También probé el código exacto anterior y funcionó de ambas maneras. En resumen, el \ x22 no parece funcionar en todos los escenarios y debería intentar " en ese caso. – SpliFF
Bueno. " parece funcionar en atributos de etiqueta html en Webkit y Firefox y Opera. – NoBugs
\ x22 es el único que funcionó para mí – Ruwantha