Foros del Web » Programando para Internet » Javascript »

Problema innerHTML con ajax

Estas en el tema de Problema innerHTML con ajax en el foro de Javascript en Foros del Web. Hola a tod@s!!! Tengo un pequeño problema con la propiedad innerHTML. Me gustaría insertar un datetimepicker (tag ajax de struts2) mediante ésta propiedad de la ...
  #1 (permalink)  
Antiguo 04/02/2008, 03:00
lfc
 
Fecha de Ingreso: febrero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Problema innerHTML con ajax

Hola a tod@s!!!

Tengo un pequeño problema con la propiedad innerHTML. Me gustaría insertar un datetimepicker (tag ajax de struts2) mediante ésta propiedad de la siguiente manera:

Código:
<div id = 'datetime'></div>

dt = '<s:datetimepicker name="picker" /><s:datetimepicker type="time" name="picker" />';
document.getElementById('datetime').innerHTML = dt;
Pero al cargar la página aparecen los textields para coger una fecha y una hora pero también aparece el código escrito a partir de este punto. Es como si al encontrar este tag no ejecutara más javascript y imprime todo el código por pantalla... estraño...

Alguine me puede ayudar?

GRACIAS!!!!
  #2 (permalink)  
Antiguo 04/02/2008, 03:13
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 5 meses
Puntos: 61
Re: Problema innerHTML con ajax

Igual es una tontería, pero.... no sería mejor ponerlo así?

Código PHP:
<div id 'datetime'></div>
<
script type="text/javascript">
dt '<s:datetimepicker name="picker" /><s:datetimepicker type="time" name="picker" />';
document.getElementById('datetime').innerHTML dt;
</script> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 04/02/2008, 03:29
lfc
 
Fecha de Ingreso: febrero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Problema innerHTML con ajax

Lo he probado como me has dicho y no funciona, pasa lo mismo.

De hecho el código que he puesto ya está dentro de código script, el código exacto que tengo es:

Código:
[...]

function addReservationConstraints(event)
{
	var event = event || window.event;	
	var obj = this;
				
	divdest = obj.nextSibling.nextSibling.nextSibling;
        dt = '<s:datetimepicker name="picker" /><s:datetimepicker type="time" name="picker" />';
	divdest.innerHTML = dt;

       [...]
}

[...]
Antes he puesto la definición del div para que se entendiera de donde venia (un descuido lo siento!)

Gracias!
  #4 (permalink)  
Antiguo 04/02/2008, 04:07
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Problema innerHTML con ajax

Hola:

Por lo que veo, obj se refiere a un objeto e innerHTML se aplica a etiquetas... supongo que te falta una cosilla:
obj = (window.event) ? event.srcElement:event.target;

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 04/02/2008, 04:25
lfc
 
Fecha de Ingreso: febrero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Problema innerHTML con ajax

Muchas gracias, pero esto no me ha solucionado el problema, ya que si hago esto:

Código:
function addReservationConstraints(event)
{
	var event = event || window.event;	
	var obj = this;
				
	divdest = obj.nextSibling.nextSibling.nextSibling;
			
	txt = document.createTextNode('Start Time: ');
	divdest.appendChild(txt);
	st = document.createElement('input');
	st.name = 'txtdate';
	st.value = '';
	divdest.appendChild(st);
	divdest.appendChild(document.createTextNode("\u00a0")); //space
	
        myImg = document.createElement('img');
	myImg.name = 'dateimg';
	myImg.src = 'date-icon.gif';
	myImg.width = 20;
	myImg.height = 20;
	myImg.border = 0;
	myImg.alt = 'Pick a date';
	myImg.onclick = showDateTimePicker;
	divdest.appendChild(myImg);
}
Me funciona bien, encuentra el div destino. Pero si hago esto no:

Código:
function addReservationConstraints(event)
{
	var event = event || window.event;	
	var obj = this;
				
	divdest = obj.nextSibling.nextSibling.nextSibling;
			
	dt = '<s:datetimepicker name="picker" /><s:datetimepicker type="time" name="picker" />';
	divdest.innerHTML = dt;
}
Tampoco me funciona con la modificación que me has comentado....

Saludos
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 16:23.