Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/08/2011, 16:43
agcforos
 
Fecha de Ingreso: julio-2011
Mensajes: 91
Antigüedad: 12 años, 8 meses
Puntos: 2
Script origen y destino el mismo.

Hola.
Necesito estar llamando al mismo script en el que me encuentro de forma recursiva. La primera vez, esta llamada está siendo ejecutada desde un php y posteriormente la intención es que se llame a si mismo hasta que un contador que está inicializado en el php inicial y que viaja como parámetro en las sucesivas llamadas valga un valor.
Cuando se ejecuta este script presenta un formulario en el que le incluyo todos los campos que necesito como parametros, como campos ocultos del formulario. El problema es que la primera vez desde el php al javascript, recibe perfectamente todos los parámetros (bueno a excepción de un array que ha sido convertido como javascript en el php pero que no se como enviarlo como parámetro del php al javascript), pero a partir de la segunda y sucesivas llamadas, cuando se llama a si mismo de forma recursiva pasándole los parametros como campos ocultos, no veo los valores que teoricamente le quiero pasar.
En teoria la función que recoge estos, entiendo que si funciona en la primera llamada igualmente debería de hacerlo en las llamadas sucesivas, pero en todos los casos lo que está pasando es el literal del value de los correspondientes campos ocultos del formulario.
Adjunto el código por si alguien puede ayudarme. Intento de distintas maneras informar al value de uno de los campos ocultos, llamando a una función dentro del input y también con document.getElementById, pero no consigo nada.
Agradecido de antemano si alguien me echa una mano y si no pues también.

Adjunto la llamada desde el php que si que funciona.

Cita:
display_button("repasoPreguntas.html?idcurso=".$id curso."&idasignatura=".$idasignatura."&idtema=".$i dtema."&curso=".$curso."&asignatura=".$asignatura. "&tema=".$tema."&myArr=".urlencode(myArr)."&indice =".$indice, "comenzar", "Comenzar");

Cita:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<meta name="author" content="SyToo" />

<script type="text/javascript">

var title1;
var idcurso;
var idasignatura;
var idtema;
var curso;
var asignatura;
var tema;
var myArr = new Array();
var myArr1 = new Array();
var indice;

function inicio(){
var vars=[];
query=window.location.search.substring(1);
q=query.split("&");
for(i=0;i<q.length;i++){
x=q[i].split("=");
k=x[0];
v=x[1];
vars[k]=v;
}
idcurso = vars['idcurso'];
idasignatura = vars['idasignatura'];
idtema = vars['idtema'];
curso = vars['curso'];
asignatura = vars['asignatura'];
tema = vars['tema'];
myArr = vars['myArr'];
indice = vars['indice'];
title1 = curso+' - '+asignatura+' - '+tema;
document.title = unescape(title1);
verCabecera();
crearArray();
}

function verCabecera(){
document.getElementById('cat').innerHTML = unescape(title1);
}

function crearArray(){
myArr1[0] = ['pregunta1','respuesta11','respuesta12','respuesta 13','respuesta14'];
myArr1[1] = ['pregunta2','respuesta21','respuesta22','respuesta 23','respuesta24'];
myArr1[2] = ['pregunta3','respuesta31','respuesta32','respuesta 33','respuesta34'];
myArr1[3] = ['pregunta4','respuesta41','respuesta42','respuesta 43','respuesta44'];
}

function cargaValores(){
document.getElementById('idc').value = idcurso;
}

</script>

<title>Sin título 11</title>
<style>
h2 {
font-family: Arial, Helvetica, sans-serif;
font-size: 22px;
color : red;
margin : 6px
}
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 13px
}
li, td {
font-family: Arial, Helvetica, sans-serif;
font-size: 13px
}
hr {
color: #FF0000;
width:70%;
text-align:center
}
a {
color: #000000
}
input.error{
background-color : silver;
border : 1px solid black;
}
#volver{
text-align:center
}
</style>


</head>

<body>

<table width=100% border=0 cellspacing = 0 bgcolor=#cccccc>
<tr>
<td rowspan = 2>
<a href = "index.php"><img src="imagenes/libro.png" alt="Anagrama Aprendetu" border=0
align=left valign=bottom height = 60 width = 247></a>
</td>
<td align = right valign = bottom>

</td>
</tr>
</table>

<h2 id='cat'></h2>





<script>
inicio();
document.write("Valor de array en " + myArr1[indice][0]);
document.write('indice: '+ indice);

if(indice=0){
document.write('idcurso: '+ idcurso);
//document.getElementById('idc').value = idcurso;
}
indice++;

document.write("<form name='envio' action='repasoPreguntas.html' method='GET'>");
document.write("<input id='idc' onClick='cargaValores()' type='hidden' name='idcurso' value='idcurso'/>");
document.write("<input type='hidden' name='idasignatura' value='idasignatura'/>");
document.write("<input type='hidden' name='idtema' value='idtema'/>");
document.write("<input type='hidden' name='curso' value='curso'/>");
document.write("<input type='hidden' name='asignatura' value='asignatura'/>");
document.write("<input type='hidden' name='tema' value='tema'/>");
document.write("<input type='hidden' name='myArr' value='myArr'/>");
document.write("<input type='hidden' name='indice' value='indice'/>");
document.write("<input type='submit' name='continuar' value='Continuar'/>");
document.write("</form>");
</script>
</body>
</html>
Saludos.