Foros del Web » Programando para Internet » Javascript »

Insertar espacio en javascript

Estas en el tema de Insertar espacio en javascript en el foro de Javascript en Foros del Web. Hola, estoy creando un elemento con varios inputs dinámicamente en javascript, y para separar un input de otro inserto saltos de línea (<br>) porque si ...
  #1 (permalink)  
Antiguo 07/08/2007, 02:33
 
Fecha de Ingreso: febrero-2007
Mensajes: 138
Antigüedad: 17 años, 2 meses
Puntos: 0
Insertar espacio en javascript

Hola, estoy creando un elemento con varios inputs dinámicamente en javascript, y para separar un input de otro inserto saltos de línea (<br>) porque si inserto un espacio (&nbsp;) no me sale nada, me falla el script javascript, me dice que he insertado un caracter inválido.

Para insertar un salto de línea lo hacia:
Código:
 txt = document.createElement('<br>');				
  contenedor.appendChild(txt);
Y ahora para insertar un espacio en blanco:


Código:
  txt = document.createElement('&nbsp;');		
  contenedor.appendChild(txt);
Muchas gracias
  #2 (permalink)  
Antiguo 07/08/2007, 02:44
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Re: Insertar espacio en javascript

Hola

el html reconoce al menos un espacio entre caracteres y elementos. ¿por qué no usas un caracter de espacio dentro de la cadena?

txt = document.createElement(' ');
__________________
Javascript Códigos - Bambú difunde
  #3 (permalink)  
Antiguo 07/08/2007, 03:20
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Insertar espacio en javascript

Hola:

En vez de usar createElement creo que es mejor usar createTextNode(" ");

Ejemplo:

Código:
<html>
<head>
<script>
function espaciar() {
 espacio = document.createTextNode("      ");
 document.getElementById("texto").appendChild(espacio);
}
</script>
</head>
<body>
<p>Hola<span id="texto"></span>Amigo</p>
<button type="button" onclick="espaciar()">espaciar</button>
</body>
</html>
Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 07/08/2007, 03:23
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Re: Insertar espacio en javascript

Cita:
Iniciado por caricatos Ver Mensaje
Hola:

En vez de usar createElement creo que es mejor usar createTextNode(" ");
...oño seré béstia no me había fijado al copipastear ...
  #5 (permalink)  
Antiguo 07/08/2007, 03:41
 
Fecha de Ingreso: febrero-2007
Mensajes: 138
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Insertar espacio en javascript

pero esto:

Código:
  txt = document.createTextNode('Nombre: ');			//Creamos el nombre del participante
  ele = document.createElement('input'); 
  ele.type = 'text'; 
  ele.size='40';
  ele.name = 'cNombrePart'+numParticipante; 
  contenedor.appendChild(txt);
  contenedor.appendChild(ele); 
  
  espacio = document.createTextNode('        ');
  contenedor.appendChild(espacio);

													//Creamos la fecha de finalización del curso
  txt = document.createTextNode('Parentesco: ');
  ele = document.createElement('input'); 
  ele.type = 'text'; 
  ele.name = 'cParentesco'+numParticipante; 
  contenedor.appendChild(txt);
  contenedor.appendChild(ele);
No me funciona
  #6 (permalink)  
Antiguo 07/08/2007, 04:28
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Insertar espacio en javascript

Cita:
Iniciado por tunait Ver Mensaje
...oño seré béstia no me había fijado al copipastear ...

¡Je, je! ...Los dedos parece que van más rápido que algunas neuronas...

Cita:
Iniciado por marcospuig Ver Mensaje
pero esto:

Código:
  txt = document.createTextNode('Nombre: ');			//Creamos el nombre del participante
  ele = document.createElement('input'); 
  ele.type = 'text'; 
  ele.size='40';
  ele.name = 'cNombrePart'+numParticipante; 
  contenedor.appendChild(txt);
  contenedor.appendChild(ele); 
  
  espacio = document.createTextNode('        ');
  contenedor.appendChild(espacio);

													//Creamos la fecha de finalización del curso
  txt = document.createTextNode('Parentesco: ');
  ele = document.createElement('input'); 
  ele.type = 'text'; 
  ele.name = 'cParentesco'+numParticipante; 
  contenedor.appendChild(txt);
  contenedor.appendChild(ele);
No me funciona
No me extrañaría que el error estuviera en otra parte... por ejemplo la asignación del atributo type ... creo que algunos atributos de controles de formularios solo pueden modificarse con el método setAttribute...

Prueba así: ele.setAttribute("type", "text");

Y luego nos cuentas... por cierto, puedes fijarte en la línea donde está el error.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 07/08/2007, 09:55
 
Fecha de Ingreso: febrero-2007
Mensajes: 138
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Insertar espacio en javascript

Hola

espacio = document.createTextNode(' ');
contenedor.appendChild(espacio);
espacio = document.createTextNode(' ');
contenedor.appendChild(espacio);
espacio = document.createTextNode(' ');
contenedor.appendChild(espacio);

Con este código no me sale ningún error, sólo warnings pero no me separa apenas los objetos. Y he probado a poner más de un espacio entre las comillas y tampoco.


Y con el ele.setAttribute("type", "text"); me pasa lo mismo, no da ningún error, lo que pasa es que sólo me sale 1 espacio muy pequeño separando los elementos.

Gracias
  #8 (permalink)  
Antiguo 07/08/2007, 09:58
 
Fecha de Ingreso: febrero-2007
Mensajes: 138
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Insertar espacio en javascript

Ya me sale, con
espacio = document.createTextNode("\u00a0");
contenedor.appendChild(espacio);

Pero muchas gracias por todo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:03.