Foros del Web » Programando para Internet » Javascript »

DOM: texto de un div

Estas en el tema de DOM: texto de un div en el foro de Javascript en Foros del Web. Hola a todos! tengo el siguiente html: <div class="error_message" id="error_titol"> Mensaje de error </div> quiero cambiar "Mensaje de error" por otro mensaje. Aquí va mi ...
  #1 (permalink)  
Antiguo 27/05/2008, 04:29
 
Fecha de Ingreso: marzo-2008
Mensajes: 80
Antigüedad: 16 años, 1 mes
Puntos: 0
DOM: texto de un div

Hola a todos!

tengo el siguiente html:

<div class="error_message" id="error_titol"> Mensaje de error </div>

quiero cambiar "Mensaje de error" por otro mensaje.

Aquí va mi javascript


...

var error_titol=document.getElementById('error_titol') ;

if(titol)
{
error_titol.style.visibility='visible';

alert(error_titol.firstChild.nodeValue;);

}

...

La visibilidad se cambia, pero el alert de null cuando devería dar, a mi entender, Mensaje de error.

también he porbado con error_titol.childNodes[0].nodeValue y lo mismo.

¿qué hago mal?
  #2 (permalink)  
Antiguo 27/05/2008, 04:40
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
Respuesta: DOM: texto de un div

¿Qué es titol?
  #3 (permalink)  
Antiguo 27/05/2008, 05:15
 
Fecha de Ingreso: marzo-2008
Mensajes: 80
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: DOM: texto de un div

significa título

var titol=document.getElementById('titol').value;

esto ya funciona bien. oblidad el if
  #4 (permalink)  
Antiguo 27/05/2008, 05:21
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
Respuesta: DOM: texto de un div

ok, olvidado el if.

Esto funciona correctamente

Código:
<div class="error_message" id="error_titol"> Mensaje de error </div>
<script type="text/javascript">
var error_titol=document.getElementById('error_titol') ;

//if(titol)
//{
error_titol.style.visibility='visible';

alert(error_titol.firstChild.nodeValue);

//}
</script>
  #5 (permalink)  
Antiguo 27/05/2008, 08:26
 
Fecha de Ingreso: marzo-2008
Mensajes: 80
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: DOM: texto de un div

cachis! pues a mi no. Saco el if y lo mismo: NULL. A ver, voy a poner más trozos de código, a ver si así...

Código:
<form id="formulari_anunci" onsubmit="return enviarFormulari()" action="../../PHP/anunci/verComoQuedaAnuncioD.php" method="post" enctype="multipart/form-data" >

...

<a id="error_titol_link" />

<div class="recuadre_amb_padding">
 	<h4>Categorias en las que aparecerá tu anuncio</h4>
    
    {$categories}
   
</div>

<div class="recuadre_amb_padding">
	<span>
    	<div class="asterisc">*</div>
		<h4>Usa un buen título para que los profesores encuentren mejor tu clase</h4>
    </span>
    
    <div class="error_message" id="error_titol"> Missatge d'error </div>
    
    <div class="asterisc">*</div>

....

y el javascript entero:

Código:
function enviarFormulari(){
	
  if(!dadesCorrectes()) return false;

}

function dadesCorrectes(){

var errors=false;
var error_titol=document.getElementById('error_titol');
var titol=document.getElementById('titol').value;


//if(titol)
//{
	location.href = "formularioPublicarDemanda.tpl#error_titol_link";
	error_titol.style.visibility='visible';
	alert(error_titol.firstChild.nodeValue);
	//error_titol.firstChild.nodeValue//
	//error_titol.innerHTML="Ya hay un anuncio con éste título, use un título distinto";
//}

errors=true;

return !errors;
	
}
Por cierto, uso Smarty, pero esto no deberia influir en absoluto con el DOM
  #6 (permalink)  
Antiguo 30/05/2008, 06:15
 
Fecha de Ingreso: marzo-2008
Mensajes: 80
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: DOM: texto de un div

ya encontré el error. El código correcto éra

error_titol.firstChild.firstChild.nodeValue;

y no

error_titol.firstChild.nodeValue;
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 10:47.