JavaScript - Paso de una varialbe de una pagina a otra

 
Vista:
sin imagen de perfil

Paso de una varialbe de una pagina a otra

Publicado por Eugenia (4 intervenciones) el 04/03/2014 05:02:55
Estimados!.
Les comentó mi problemita...q hace días estoy tratando de solucionar…lo que intento hacer es pasar una variable a través de la url…de una página origen a otra destino…para poder usar esa variable que es el nombre de un alumno.
En la página Origen tengo:
En 1º lugar se llama Actividades.jsp en esta página ingreso un nombre de un alumno como muestro a continuación

<br> Ingrese alumno <input type="text" id="ninio">

Esta página a la vez tiene varios links a otras páginas….son 6 enlaces a las actividades correspondientes x ejemplo:
1
<td width="142" valign="top"><input type="image"  value="enviar" src="enlace.numero.png" width="160" height="120" style="cursor: pointer" onClick="javascript:pasarVariables('http://localhost:8080/123Matematica/RepasoCuenta.jsp', nombres)">

La función pasarVariables es la siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
var nombres=document.getElementById("ninio").value;
 
function pasarVariables(pagina, nombres)
{
 pagina +="?";
  nomVec = nombres.split(" ");
  for ( i=0; i<nomVec.length; i++)
    pagina += nomVec[i] + "=" + escape(eval(nomVec[i]))+"&";
  pagina = pagina.substring(0,pagina.length-1);
  location.href=pagina;
  //document.write(nombres)
 
  }

En la página Destino
1
2
3
4
5
6
7
8
9
cadVariables = location.search.substring(1,location.search.length);
arrVariables = cadVariables.split("&");
for (i=0; i<arrVariables.length; i++) {
  arrVariableActual = arrVariables[i].split("=");
  if (isNaN(parseFloat(arrVariableActual[1])))
    eval(arrVariableActual[0]+"='"+unescape(arrVariableActual[1])+"");
  else
    eval(arrVariableActual[0]+"="+arrVariableActual[1]+";");
}

Este seria el error:
1
2
3
4
5
mar 04, 2014 12:29:23 AM org.apache.tomcat.util.http.Parameters processParameters
INFO: Invalid chunk starting at byte [0] and ending at byte [10] with a value of [=undefined] ignored
 Note: further occurrences of Parameter errors will be logged at DEBUG level.
Otro error q encontré es la parte de la página destino en las parte de inspeccionar elemento de Google Chorme
ncaught SyntaxError: Unexpected token = RepasoCuenta.jsp?=undefined:1


El objetivo principal es que pueda usar el nombre del alumno en los 6 enlaces…o sea la idea seria llevarlo desde la url de actividades a cualquiera de los links q el alumno elija.
Espero que me hayan entendido y por favor necesito ayudaaaaaaaa!!! Saludos y Gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Paso de una varialbe de una pagina a otra

Publicado por xve (2100 intervenciones) el 04/03/2014 09:04:52
Hola Eugenia, creo que el problema lo tienes en que la linea donde coges el nombre del alumno esta fuera de la función pasarVariables()

Prueba a poner esta linea:
1
var nombres=document.getElementById("ninio").value;
dentro de la función pasarVariables()...

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Paso de una varialbe de una pagina a otra

Publicado por Eugenia (4 intervenciones) el 04/03/2014 17:42:18
Buenas....te comento que ya intente esa alternativa...el error es que la vable "nombres" no esta definida....ya que en la funcioin pasarVariable () van dos parametro ...uno es la direccion url a donde quiero llevar el dato, y la otra es la variable nombres...
digamos q con lo poco q entiendo de JS..tengo q definirla vble nombres en forma global
Creeria q es eso!.....

peor seguimos en la misma! :(

Saludos y Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Paso de una varialbe de una pagina a otra

Publicado por xve (2100 intervenciones) el 04/03/2014 18:28:29
Hola Eugenia, la variable nombres, la tienes que leer cada vez que ejecutes la función pasarVariables(), ya que si no lo haces así, no coge el valor actual del input.

Como llamas a la función pasarVariables()?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Paso de una varialbe de una pagina a otra

Publicado por Eugenia (4 intervenciones) el 04/03/2014 19:29:19
Uncaught ReferenceError: Ana is not defined

Holaa!! de nuevo yo por aca... hice el cambio y me dice q cualquier valor q ingrese no esta definido... :( parece q la funcion pasarVariables....es mas para pasar un valor predeterminado..no una variable q pueda tener diferentes valores
me entiendes???
pleace ayudaa....estoy haciendo mi tesis...y quiero y necesito terminarla pleace ayudaaaaa :(
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Paso de una varialbe de una pagina a otra

Publicado por xve (2100 intervenciones) el 05/03/2014 07:43:27
Hola Eugenia, todavia no nos has dicho que parámetros pasas, por lo que es un poco difícil de entender tu problema...

Aqui te adjunto un ejemplo con tu función pasarVariables que funciona... lo único, que he tenido que modificar una linea, ya que no puedo evaluar su contenido...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!DOCTYPE html>
<html lang="es">
<head>
    <title></title>
    <meta charset="utf-8">
    <script>
 
    function pasarVariables(pagina)
    {
        var nombres=document.getElementById("ninio").value;
        pagina +="?";
        nomVec = nombres.split(" ");
 
        for ( i=0; i<nomVec.length; i++)
        {
            //pagina += nomVec[i] + "=" + escape(eval(nomVec[i]))+"&"; ## linea reemplazada
            pagina += nomVec[i] + "=" + nomVec[i]+"&";
        }
        pagina = pagina.substring(0,pagina.length-1);
        location.href=pagina;
    }
    </script>
</head>
 
<body>
 
<form id="form">
    <input type="text" id="ninio" value="hola que tal">
    <input type="button" value="enviar" onclick="pasarVariables('http://www.lawebdelprogramador.com')">
</form>
 
</body>
</html>

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Paso de una varialbe de una pagina a otra

Publicado por Eugenia (4 intervenciones) el 11/03/2014 03:55:21
HOllaaaaa muchas gracias por las respuestasss!!!!

Perdonnnn.....x no responder antessss ....les cuentooo q me salioooo!!!!!....tuve problemas....pero logre solucionarlos...aca les dejo el código q me funciono...

*************************************************************************************************
en la pagina origen ponemos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<br> Ingrese alumno   <input type="text" id="ninio">  <br>
 
<script type="text/javascript">
 
function pasarVariables(pagina)
{
var nombres=document.getElementById("ninio").value;
  pagina +="?";
  nomVec = nombres;
  auxiliar =  "=" + nomVec;
  pagina += auxiliar;
  pagina = pagina.substring(0,pagina.length);
  location.href=pagina;
 }
 
</script>
 
<td width="142" valign="top"><input type="image"  value="enviar" src="enlace.numero.png" width="160" height="120" style="cursor: pointer" onClick="javascript:pasarVariables('http://localhost:8080/123Matematica/RepasoCuenta.jsp')">

*****************************************************************************************************************

en la pagina destino ponemos:

1
2
3
4
5
6
7
//en cadena recibe la url y selecciona el nombre
cadena = location.search.substring(1,location.search.length);
//alert(cadena);
//caracter que deseamos eliminar
var patron="=";
cadena=cadena.replace(patron,'');
alert(cadena);

*********************************************************************************************
Cambie bastante el codigo...en el codigo princial tenia la funcion donde recibia una cadena de nombre....y como yo solo necesitaba una palabra....por eso le saque el for y demas.....creo q ese ...es el cambio q me ayudo a arreglar las cosas.
y despues en la pagina destino...ahi capturo la url....y le saco elimino un = q es donde me idica q comienza la variable q quiero recibir. Espero q me perdonen la demora!...pero muy agradesida por la ayuda!....saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Paso de una varialbe de una pagina a otra

Publicado por xve (2100 intervenciones) el 11/03/2014 08:57:37
Gracias por compartirlo Eugenia.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar