Buscar temas sin respuesta | Ver temas activos Fecha actual 19 Ago 2017 23:29

Reglas del Foro


Es un foro abierto pero moderado, es decir que cualquier mensaje pasa por el moderador que borrará de inmediato todo lo que suene a spam.



Responder al tema  [ 4 mensajes ] 
 Ejecutar una funcion en un enlace contenido en un array 
Autor Mensaje
Tengo un array con distintos elementos, nombre, edad, foto, etc., que se muestran al mismo tiempo que me crea el cuadro o la tabla con inneHTML y necesito que al pinchar sobre la foto que la tengo puesta como enlace se ejecute una funcion para que me muestre la misma foto pero ampliada y dicha función que sobre una foto contenida en una página funciona perfectamente, dentro del array ya no va, no me coge el código de la función.

Este es el código, pero dentro del array ya no funciona
<a href="javascript:datosimg('b','imgGr','Adap6.jpg')"
No sé si es que no se puede o es un problema de comillas o hay que hacerlo de otra manera

Y este es parte del código del inner con el que creo el cuadro con todos los arrays

document.getElementById("lNombres").innerHTML += "<div class=socios><div class=columnaIzqda><a href="javascript:datosimg('b','imgGr','foto1.jpg')">
<img id=b src=imagesInfor/" + array[i][1] + ".jpg \ title=Pulse&nbsp;para&nbsp;ver&nbsp;la&nbsp;imagen&nbsp;ampliada></a></div> \


03 Oct 2013 09:52
Hola
Pues mira sin ver la página no me hago una idea clara, pero así de entrada veo un pequeño problema de comillas en los que escribes

document.getElementById("lNombres").innerHTML += "<div class=socios><div class=columnaIzqda><a href="javascript:datosimg('b','imgGr','foto1.jpg')">

Si te fijas no cierras la cadena. Corregido esto es
document.getElementById("lNombres").innerHTML += "<div class=socios><div class=columnaIzqda><a href=\"javascript:datosimg('b','imgGr','foto1.jpg')\">"

Ahora no hay error de sintaxis en Javascript. Lo mismo era esa la causa de que no te funcione.

Saludos
Juan


03 Oct 2013 17:11
Efectivamente ese era el error, ahora ya me ejecuta la funcion perfectamente.
El ultimo parámetro de la función lo he cambiado y en vez de foto1 he puesto el elemento del array donde se encuentra la foto puesto que me tiene que mostrar la misma foto pero más grande, ahora el problema es cambiar el identificador id=b por array[i][1] porque necesito que el nombre de la foto que figura en ese elemento del array puesto que el nombre es único sea también el id ya lo tengo hecho dentro de la función datosimg pero me falta en la otra parte en <img id=b src=images/"

document.getElementById("lNombres").innerHTML += "<div class=socios><div class=columnaIzqda><a href=\"javascript:datosimg('arrayID','imgGr','" + array[i][1] + ".jpg')\"><img id=b src=images/" + array[i][1] + ".jpg \ title=Pulse&nbsp;para&nbsp;ver&nbsp;la&nbsp;imagen&nbsp;ampliada></a></div>"

Esta es parte de la función ya modificada

function datosimg(idImg, idGr, urlGr)
{
var arrayID = array[i][1];
var imagenPq = document.getElementById(idImg).id = arrayID;

Saludos


07 Oct 2013 09:45
Por si en mi mensaje anterior no ha quedado claro lo que necesito es convertir el contenido, o sea, el texto del array[i][1] en id.
Me explico tengo un array con distintos elementos, el segundo son fotos

var nombre = new Array();
nombre = [["Daniel","foto1",21],
["Luis","foto2",18],
["María","foto3",14],
["Iván","foto4",26]];

Tengo una función que al pulsar sobre una foto me muestra la misma foto más grande, entonces necesita un id para la foto pequeña y otro para la grande y lógicamente que este sea el mismo para las dos fotos que es el id=b

document.getElementById("lNombres").innerHTML += "<div class=socios><div class=columnaIzqda><a href="javascript:datosimg('b','imgGr','" + array[i][1] + ".jpg')">
<img id=b src=imagesInfor/" + array[i][1] + ".jpg></a></div>”

Así que necesito una función, he hecho varias y no consigo que me funcionen, que recorra el array y me coja el contenido de array[i][1] como id=b y por tanto sea distinto para cada array, o sea, que el id para la foto de Daniel sea id=foto1, para Luis sea id=foto2, y así con todos.

Pongo la función que se ejecuta al pulsar en el enlace de la foto, pero para no extenderme con el código pongo sólo la parte de la función que afecta al tema del id

function datosimg(idImg, idGr, urlGr)
{
var imagenPq= document.getElementById(idImg)


17 Oct 2013 10:14
Mostrar mensajes previos:  Ordenar por  
Responder al tema   [ 4 mensajes ] 

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
cron
Desarrollado por phpBB® Forum Software © phpBB Group
Designed by ST Software for PTF.
Traducción al español por Huan Manwë para phpBB-Es.COM