Iniciar sesión

Ver la versión completa : [Ayuda] Con JavaScript



nakio
22/03/2011, 14:08
A ver que me estoy volviendo un poco loco. Para identificar un documento necesito buscar dos valores que se encuentran almacenados de la seiiguiente manera:

<dd>DatosBasura</dd>
<dd>DatoImportante</dd>
<dd>DatosBasura</dd>

Y el otro se encuentra de la siguiente:

<img src="imagenes/blabla.gif" alt="DatoImportante2"/>

Como hago para obtener dichos datos?

Para el primero lo que hago a grosso modo es lo siguiente y el problema es que ese colecDD[i].value me devuelve undefined aún habiendo elemento en la colección:



var aux = 0; //Variable que nos dice el DatoImportante esta en el documento.
var colecDD = document.body.getElementsByTagName("dd");
for (var i = 0; i < colecDD.length; i++){
if (colecDD[i].value == 'DatoImportante') aux = 1;
}


Para el otro modo, he probado de tantas formas que ya no se cual enseñaros xDD

A ver si me podéis echar una mano!

Saludos, Nakio.

GameMaster
22/03/2011, 14:13
Primero le pasas un id:

<img src="imagenes/blabla.gif" alt="DatoImportante2" id="DatoImportante2"/>

En javascript, para obtener su valor:

var DameValor = document.all['DatoImportante2'].value;

nakio
22/03/2011, 14:14
Primero le pasas un id:

<img src="imagenes/blabla.gif" alt="DatoImportante2" id="DatoImportante2"/>

En javascript, para obtener su valor:

var DameValor = document.all['DatoImportante2'].value;

El código no lo puedo modificar...

Saludos, Nakio.

^MiSaTo^
22/03/2011, 14:26
El código no lo puedo modificar...

Saludos, Nakio.
En vez de poner:




if (colecDD[i].value == 'DatoImportante') aux = 1;
.

pon:

if (colecDD[i].innerHTML == 'DatoImportante') aux = 1;
y con eso te funcionará ;)

< - >
Y para la imagen:



function buscaAlt (){
var images = document.getElementsByTagName("img");
for (var i = 0; i<images.length; i++){
if (images[i].alt == "DatoImportante2")
alert("encontrado");
//aqui ya lo que sea
}
}

GameMaster
22/03/2011, 14:40
innerHTML no le va funcionar porque el valor del alt no es el valor innerHTML de la imagen

^MiSaTo^
22/03/2011, 14:42
innerHTML no le va funcionar porque el valor del alt no es el valor innerHTML de la imagen

innerHTML le va a funcionar con los <dd>, que lo he probado antes de postearlo ;) Para la imagen tiene que hacerlo con la otra función que he pegado al final de mi mensaje, mirando los .alt del elemento.

akualung
22/03/2011, 16:07
Claro, para el dd se ha de usar "innerHTML" porque al no ser un elemento de formulario, carece de atributo "value", no? Qué recuerdos, las clases de DOM en el ciclo formativo, jeje. Es casi lo único que el profe de la asignatura de redes (que aprovechó parte de esa asignatura para darnos programación web del lado cliente) nos explicó más o menos bien.

^MiSaTo^
22/03/2011, 16:13
Claro, para el dd se ha de usar "innerHTML" porque al no ser un elemento de formulario, carece de atributo "value", no? Qué recuerdos, las clases de DOM en el ciclo formativo, jeje. Es casi lo único que el profe de la asignatura de redes (que aprovechó parte de esa asignatura para darnos programación web del lado cliente) nos explicó más o menos bien.
Efectivamente, <dd> no tiene atributo value, como por ejemplo tampoco lo tiene <div> ;)

GameMaster
22/03/2011, 17:07
me referia a la imagen logicamente, si es que respiro todos los dias html xD

^MiSaTo^
22/03/2011, 17:12
me referia a la imagen logicamente, si es que respiro todos los dias html xD
Ya pero si relees mi post, he corregido la función que había puesto nakio para los <dd> (que con value lógicamente no le funcionaba) y luego he puesto OTRA para las imágenes ... ainsss si esque no leemos los hilos...

nakio
22/03/2011, 19:22
Gracias ^MiSaTo^ con innerHTML me funcionó y lo otro igual. Eres una máquina!

Saludos, Nakio.

^MiSaTo^
22/03/2011, 19:51
Gracias ^MiSaTo^ con innerHTML me funcionó y lo otro igual. Eres una máquina!

Saludos, Nakio.

Nada hombre, pa eso estamos :brindis: