Foros del Web » Programando para Internet » Javascript »

pasar variables

Estas en el tema de pasar variables en el foro de Javascript en Foros del Web. hola tengo el siguiente codigo <html> <head> <script type="text/javascript"> var thesites= new Array() thesites[0]="formataller.php"; thesites[1]="formapreviabilidad.php"; thesites[2]="formaviabilidad.php"; var gosite=""; function geturl(thenum) { gosite=thesites[thenum]; } function gothere() ...
  #1 (permalink)  
Antiguo 06/10/2004, 07:24
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 19 años, 7 meses
Puntos: 0
Exclamación pasar variables

hola tengo el siguiente codigo


<html>
<head>
<script type="text/javascript">

var thesites= new Array()
thesites[0]="formataller.php";
thesites[1]="formapreviabilidad.php";
thesites[2]="formaviabilidad.php";

var gosite="";
function geturl(thenum)
{
gosite=thesites[thenum];
}
function gothere()
{
if ((gosite==null) || (gosite==""))
alert("Por favor seleccione una respuesta");
else
window.location=gosite;
}
function changeDiv(the_div,the_change)
{
var the_style = getStyleObject(the_div);
if (the_style != false)
{
the_style.display = the_change;
}
}

function hideAll1()
{
changeDiv("taller2","none");
changeDiv("previabilidad1","none");
changeDiv("previabilidad2","none");
changeDiv("viabilidad1","none");
changeDiv("viabilidad2","none");
changeDiv("viabilidad3","none");
}
function hideAll2()
{
changeDiv("previabilidad1","none");
changeDiv("previabilidad2","none");
changeDiv("viabilidad1","none");
changeDiv("viabilidad2","none");
changeDiv("viabilidad3","none");
}
function hideAll3()
{
changeDiv("previabilidad2","none");
changeDiv("viabilidad1","none");
changeDiv("viabilidad2","none");
changeDiv("viabilidad3","none");
}
function hideAll4()
{
changeDiv("viabilidad1","none");
changeDiv("viabilidad2","none");
changeDiv("viabilidad3","none");
}
function hideAll5()
{
changeDiv("viabilidad2","none");
changeDiv("viabilidad3","none");
}
function hideAll6()
{
changeDiv("viabilidad3","none");
}
function getStyleObject(objectId) {
if (document.getElementById && document.getElementById(objectId)) {
return document.getElementById(objectId).style;
} else if (document.all && document.all(objectId)) {
return document.all(objectId).style;
} else {
return false;
}
}

function MM_findObj(n, d) { //v3.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_validateForm() { //v3.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_valida teForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (val!=''+num) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' \n'; }
} if (errors) alert('Faltaron los siguientes campos:\n'+errors);
document.MM_returnValue = (errors == '');
}

</script>
</style>
</head>

<body bgcolor="#FFFFFF">
<form method="get" action="">
<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Del producto
o servicio que desea desarrollar, usted:</font></p>
<div id="taller1">
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="569" class="numerales" height="30">
<ol type="1" start="1">
<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Conoce
su proposición de valor hacia el cliente (beneficios)?</font></li>
</ol>
</td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">SI
<input type="radio" name="valor" value="radiobutton"
onClick="changeDiv('taller2','block');">
</font></td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">NO
<input type="radio" name="valor" value="radiobutton"
onClick="hideAll1();geturl(0);</font></td>
</tr>
</table>
</div>
<div id="taller2" style="display:none;">
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="569" class="numerales" height="30">
<ol type="1" start="2">
<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Conoce
la existencia de tecnologías (globales) para su implementación?
</font></li>
</ol>
</td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">SI
<input type="radio" name="tecnologias" value="radiobutton"
onClick="changeDiv('previabilidad1','block');">
</font></td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">NO
<input type="radio" name="tecnologias" value="radiobutton"
onClick="hideAll2();geturl(0);
</font></td>
</tr>
</table>
</div>
<br>
<div id="previabilidad1" style="display:none;">
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="569" height="30">
<ol type="1" start="3">
<li class="numerales"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Conoce
su descripción funcional?</font></li>
</ol>
</td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">SI
<input type="radio" name="descripcion" value="radiobutton"
onClick="changeDiv('previabilidad2','block');">
</font></td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">NO
<input type="radio" name="descripcion" value="radiobutton"
onClick="hideAll3();geturl(0); </font></td>
</tr>
</table>
</div>
<div id="previabilidad2" style="display:none;">
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="569" height="30">
<ol type="1" start="4">
<li class="numerales"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Conoce
el mercado objetivo hacia el cual va dirigido?</font></li>
</ol>
</td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">SI
<input type="radio" name="mercado" value="radiobutton"
onClick="geturl(1);changeDiv('viabilidad1','block' );">
</font></td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">NO
<input type="radio" name="mercado" value="radiobutton"
onClick="hideAll4();geturl(0);
</font></td>
</tr>
</table>
</div>

<br>
<div id="viabilidad1" style="display:none;">
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="569" class="numerales" height="30">
<ol type="1" start="5">
<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Conoce
sus características de uso? (características comerciales, requisitos
técnicos mínimos (si existen), interacción con otros servicios ETB)
</font></li>
</ol>
</td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">SI
<input type="radio" name="uso" value="radiobutton"
onClick="changeDiv('viabilidad2','block');">
</font></td>
<td width="55" valign="top"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">NO
<input type="radio" name="uso" value="radiobutton"
onClick="hideAll5();geturl(1); </font></td>
</tr>
</table>
</div>
<div id="viabilidad2" style="display:none;">
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="569" height="30">
<ol type="1" start="6" style="numerales">
<li class="numerales"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Conoce
su demanda estimada?</font></li>
</ol>
</td>
</table>
</div>
<p>&nbsp;</p>

<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Diligenciado por
(VP Comercial):</font>
<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2"> Nombres:
<input type="text" name="Nombres" size="50">
</font></p>
<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Apellidos:
<input type="text" name="Apellidos" size="50">
</font></p>


<p> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input type="button" name="Submit" value="Enviar" onClick="gothere();MM_validateForm('Nombres','','R ','Apelli dos','','R');return document.MM_returnValue">
<input type="reset" name="Submit2" value="Limpiar Forma">
</font></p>

</form>
</body>
</html>

lo que necesito es que dependiendo de la cantidad de respuestas del usuario el usuario va auna de las tres paginas pero no se como enviar los datos a la pagina por que no puede utilizar el action puesto que no va a una pagina predefinida si no que puede ir a cualquiera de las tres

sabe como hacer esto

se lo agradezco de antemano
  #2 (permalink)  
Antiguo 06/10/2004, 18:58
 
Fecha de Ingreso: agosto-2004
Mensajes: 157
Antigüedad: 19 años, 8 meses
Puntos: 5
Hola marko249

He probado si es posible cambiar el valor de action y parece que si es posible.

if(respuestas es x){
document.formulario.action = thesites[0]
document.formulario.submit()

}

else if( respuestas es y){
document.formulario.action = thesites[1]
document.formulario.submit()


}

Un saludo
  #3 (permalink)  
Antiguo 07/10/2004, 07:17
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 19 años, 7 meses
Puntos: 0
Exclamación pasar variables

Cita:
Iniciado por kepawe
Hola marko249

He probado si es posible cambiar el valor de action y parece que si es posible.

if(respuestas es x){
document.formulario.action = thesites[0]
document.formulario.submit()

}

else if( respuestas es y){
document.formulario.action = thesites[1]
document.formulario.submit()


}

Un saludo
hola kepawe

tal vez no me he esplicado bien, el codigo ya va a atras ventanas dependiendo de la cantidad de respuestas lo que no he podido hacer es enviar las variables Nombres y Apellidos a las otras ventanas no se como hacerlo

saludos
  #4 (permalink)  
Antiguo 07/10/2004, 18:06
 
Fecha de Ingreso: agosto-2004
Mensajes: 157
Antigüedad: 19 años, 8 meses
Puntos: 5
Hola de nuevo
Corrigeme si me equivoco, lo que quieres es que cuando el usuario presione en el botón enviar le envie a la páqina dependiendo la cantidad de respuestas ,he visto que las páginas a donde quieres enviar las variables están en php, no estiendo mucho de php pero podrias enviar facilmente las variables con un formulario.
Te pongo un este ejemplo para lo compruebes y puedas adaptarlo a tu código.

Código PHP:
<html>

<
head>
  <
title></title>
<
script language="JavaScript">
<!--
var 
my_pages = new Array()
my_pages[0] = "page1.php"
my_pages[1] = "page2.php"
my_pages[2] = "page3.php"

function send_var(){
// Elegimos una página aleatoriamente
go_page my_pages[Math.floor(my_pages.length Math.random())]
//  las asignamos a la propiedad action
document.formulario.action go_page
// Enviamos el formulario y vamos la página
document.formulario.submit()



}


//-->

</script>


</head>


<body>
<form name="formulario" method="post">
Nombre
<input type="text" name="nombre" value="Juan">
Apellidos
<input type="text" name="apellidos" value="Perez">
<input type="button" value="Enviar" onclick="send_var()">

</form>


</body>

</html> 
En las páginas del array añade este código dentro de body

Código PHP:
<?php

  
echo "Hola "$_POST["nombre"]." ".$_POST["apellidos"]

?>
Si no es esto lo que buscas podrias utilizar la propiedad search de location, he visto algún ejemplo en el foro.

Un saludo
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 08:00.