Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/03/2011, 10:15
Avatar de Z3R0N3
Z3R0N3
 
Fecha de Ingreso: junio-2010
Ubicación: En algún lugar de la mancha de cuyo nombre no quiero acordarme...
Mensajes: 73
Antigüedad: 14 años, 7 meses
Puntos: 4
Acciones con parámetros recibidos en function JS

Muy buenas señores, tengo una consulta que hacerles ya que no se como tratar lo siguiente:

Supongamos que tengo un listado de Archivos y Videos, éstos son mostrados mediante un FOR en PHP para los Archivos, y otro FOR para los videos, imprimiendo por ejemplo el siguiente TAG para cada elemento: (obviamente voy a reducir el codigo para que les sea mas agradable a la vista)

VIDEO 1

Código:
<input onclick="return confirmar('VIDEOS/webflv1301323145652.flv', '0');">
VIDEO 2

Código:
<input onclick="return confirmar('VIDEOS/webflv2345652.flv', '1');">

ARCHIVO 1

Código:
<input onclick="return confirmar('ARCHIVOS/imagen.jpg', '0');">

ARCHIVO 2

Código:
<input onclick="return confirmar('ARCHIVOS/imagen2.jpg', '1');">


Bien, como pueden observar simplemente son botones que al pulsarlos llaman a la función "confirmar()" de JS pasandole 2 parámetros "confirmar( ruta, id )"


Bueno llegando a la conclusión del problema, todo funciona correcto solo que antes lo hacía solo con ARCHIVOS y no con VIDEOS, algo que siempre ha ido bien y al implementar el FOR de los videos ya se ha fastidiado.


El Code JS "ANTIGUO" recibía los parámetros así:

Código:
function confirmar(archivoEliminar, i)
{
  if(confirm('¿Realmente desea eliminar el archivo por completo? \n\n NOTA :: El archivo dejará de existir para siempre.')) 
  {
    conexion=HttpRequest();
    conexion.onreadystatechange = dibujar;
    conexion.open('POST','?'+location.search.substring(1), true);
    conexion.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    conexion.send("&dato="+archivoEliminar);

  } else {
	conexion='';
  }


como pueden observar la función recibe las 2 variables que corresponden a confirmar( ruta, id ) o bien, confirmar( archivoEliminar, i )

Al querer implementar los videos quedaría confirmar( videoEliminar, v )


Obviamente aquí está el problema, nose como tratar cada cosa por separado, quiero hacer algo así: (Ya sé que está mal... :@)


JS NUEVO:

Código:
function confirmar(archivoEliminar, i, videoEliminar, v)
{
  if(confirm('¿Realmente desea eliminar el archivo por completo? \n\n NOTA :: El archivo dejará de existir para siempre.')) 
  {
    conexion=HttpRequest();
    conexion.onreadystatechange = dibujar;
    conexion.open('POST','?'+location.search.substring(1), true);
    conexion.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    if (i) { conexion.send("&dato="+archivoEliminar); }
	if (v) { conexion.send("&dato="+videoEliminar); }

  } else {
	conexion='';
  }

Como pueden observar, intento capturar
Código:
function confirmar(archivoEliminar, i, videoEliminar, v)
y más abajo ven ésto:
Código:
if (i) { conexion.send("&dato="+archivoEliminar); }
	if (v) { conexion.send("&dato="+videoEliminar); }

Lo que quiero hacer es que en función de que haya invocado " i " o " v " haga una cosa u otra.


Espero que me entiendan sino no duden en preguntar. Gracias nuevamente y espero sus respuestas. Salu2