Tengo un par de elementos span y necesito obtener el contenido de estos elementos span en un cuadro de texto para que el usuario pueda editar.¿Cómo se pueden escapar las comillas al crear un cuadro de texto en jquery/javascript?
Puede haber cualquier número de elementos de span, por lo que los cuadros de texto deben crearse en tiempo de ejecución. El problema que estoy teniendo es que cuando el texto contiene unas comillas simples, que está jugando con mis valores de los cuadros de texto, ya que cierra una de las citas ..
Esta es la forma en que estoy creando mi caja de texto:
var spanContent = $(value).text();
var tmpTextBox = "<input type='text' id='t" + index + "' value='" + spanContent + "' class='dynTxt' />";
Aviso el valor = ' '+ spanContent +'' parte, esto es en donde está rompiendo si spanContent
tiene una comilla simple en ella .. Ahora, sé que puedo hacer esto:
value = \"" + spanContent + "\"
que trabaja bien ... pero, cuando el spanContent
tiene comillas dobles, se rompe nuevamente ..
¿Cuál es la forma más segura de evitar tanto las comillas simples como las comillas dobles en esta situación, por favor? No puedo html los codificará porque los valores de cuadro de texto no es compatible con ellos ..
He creado una pequeña reproducción de este on jsfiddle here para jugar con ..
Gracias.
Es necesario citar 'class', también jQuery está optimizado para' "" '. '' '' funciona, pero es un trabajo extra (y escribir: P). – Esailija
@Esailija: De hecho, buena captura. FF puede manejarlo, pero IE no le gusta. ;-) –
Aah! No es que decidí crear elementos de entrada de esa manera, es solo que no sabía nada mejor ... que podría hacerlo de esta manera, gracias, lo intentaré ahora! – LocustHorde