Foros del Web » Programando para Internet » Javascript »

pierdo el valor de la variable

Estas en el tema de pierdo el valor de la variable en el foro de Javascript en Foros del Web. Tengo el siguiente problema. tengo 6 menus despegables conectados a una BD, y en una variable idDoc guardo las opciones seleccionadas de los menus (estan ...
  #1 (permalink)  
Antiguo 31/08/2004, 13:10
 
Fecha de Ingreso: noviembre-2003
Ubicación: En uno de los países mas lindos: CHILE
Mensajes: 70
Antigüedad: 20 años, 5 meses
Puntos: 0
pierdo el valor de la variable

Tengo el siguiente problema.
tengo 6 menus despegables conectados a una BD, y en una variable idDoc guardo las opciones seleccionadas de los menus (estan conactenadas), todo esto en la fiunction busca()
que es la siguiente:

function busca()
{

var frm = document.forms('registro');
var vProyecto = frm.elements.proyecto.options[frm.proyecto.selectedIndex];
var vFase = frm.elements.fase.options[frm.fase.selectedIndex];
var vTipo = frm.elements.tipo.options[frm.tipo.selectedIndex];
var vArea = frm.elements.area.options[frm.area.selectedIndex];
var vEspecialidad = frm.elements.especialidad.options[frm.especialidad.selectedIndex];
var vCorrelativo = frm.elements.correlativo.options[frm.correlativo.selectedIndex];
alert('vProyecto = ' + vProyecto.text);
alert('vFase = ' + vFase.text);
alert('vTipo = ' + vTipo.text);
alert('vArea = ' + vArea.text);
alert('vEspecialidad = ' + vEspecialidad.text);
alert('vCorrelativo = ' + vCorrelativo.text);
alert('Ultimo Mensaje = ' + vProyecto.text + vFase.text + vTipo.text + vArea.text + vEspecialidad.text + vCorrelativo.text);
idDoc=(vProyecto.text+vFase.text+vTipo.text+vArea.text+ vEspecialidad.text+vCorrelativo.text);
}
/*en Este idDoc guardo las opciones elegidas de los menus como una sola palabra*/
Mi problema es que depues tengo k hacer una consulta:

select<campo> from <tabla> WHERE(campo='"&idDoc&"')

y mi gran problema es k no me reconoce la variable idDoc, y obviamente no me entrega el valor que necesito comparar con la Base de Datos

Mi pregunta es:
¿Que tengo k hacer para que me reconzca la variable y ademas me entregue el valor de las opciones seleccionadas por el usuario ( que debirese venir concatenadas como una sola variable ???
  #2 (permalink)  
Antiguo 31/08/2004, 13:15
 
Fecha de Ingreso: noviembre-2003
Ubicación: En uno de los países mas lindos: CHILE
Mensajes: 70
Antigüedad: 20 años, 5 meses
Puntos: 0
Disculpen aqui esta donde llamo la funcion

<select name="correlativo" class="Estilo20" id="correlativo" onChange="busca()">

y luego donde ocupo el valor:

<%/*ob_RSReg=Ob_Conn.Execute("SELECT Descripcion FROM LISTOTAL WHERE Numcompleto='"&IdD&"'")*/%>

Si me pudiesen ayudar se lo agradecería mucho.
  #3 (permalink)  
Antiguo 31/08/2004, 14:31
Avatar de claray  
Fecha de Ingreso: agosto-2004
Ubicación: ahora... en Caracas
Mensajes: 345
Antigüedad: 19 años, 8 meses
Puntos: 0
OK, aunque no es JavaScript...

creo no equivocarme si asumo que estas trabajando con ASP como lenguaje de servidor, por tanto pregunto:

¿como estas devolviendo el valor de idDoc (que defines en el JavaScript)? y ¿como la rescatas en tu ASP?

espero tus respuestas y, si puedes un poco mas de información...

saludos.
__________________
:pirata: El arte de desarrollar es dejar que los otros lo hagan
  #4 (permalink)  
Antiguo 31/08/2004, 15:12
 
Fecha de Ingreso: noviembre-2003
Ubicación: En uno de los países mas lindos: CHILE
Mensajes: 70
Antigüedad: 20 años, 5 meses
Puntos: 0
claray, primero k nada gracias por contestar.
Es k la verdad como tengo k hacer k mi variable que esta en el script id doc, sea reconocida despues al momento de realizar la consulta?????
primero: rescato un valor X en la funcion, y de ahi como lo hago para que ese valor sea reconocido?????
  #5 (permalink)  
Antiguo 01/09/2004, 08:07
Avatar de claray  
Fecha de Ingreso: agosto-2004
Ubicación: ahora... en Caracas
Mensajes: 345
Antigüedad: 19 años, 8 meses
Puntos: 0
La variable que defines en el Javascript esta siendo definida en el lado del cliente, por tanto en el servidor no es conocida. Cuando vas a procesar los valores de las variables ingresadas por el usuario, debes "submitir" la forma en la pagina HTML, de forma que todos los valores de objetos sean pasados al servidor.

La definición de laforma debe ser algo asi como:
<form name="registro" action="recibedatos.asp" method="post">
...
</form>


(el method puede ser GET, pero personalmente prefiero POST)

La forma será enviada al servidor para su proceso cuando se presione un boton sumbit (o image) de la forma o bien cuando mediante Javascript se "submita" explicitamente con una instruccion como la siguiente:

registro.submit();

Ahora bien, como tu defines una variable que deseas sea enviada al servidor puedes definir una campo "hidden" en la forma en donde almacenar dicho valor:

<form name="registro" action="recibedatos.asp" method="post">
...
<input type="hidden" name="iddoc" value="">
</form>

y en tu script asiganr el valor deseado al campo:


function busca()
{
var frm = document.forms('registro');
var vProyecto = frm.elements.proyecto.options[frm.proyecto.selectedIndex];
var vFase = frm.elements.fase.options[frm.fase.selectedIndex];
var vTipo = frm.elements.tipo.options[frm.tipo.selectedIndex];
var vArea = frm.elements.area.options[frm.area.selectedIndex];
var vEspecialidad = frm.elements.especialidad.options[frm.especialidad.selectedIndex];
var vCorrelativo = frm.elements.correlativo.options[frm.correlativo.selectedIndex];
alert('vProyecto = ' + vProyecto.text);
alert('vFase = ' + vFase.text);
alert('vTipo = ' + vTipo.text);
alert('vArea = ' + vArea.text);
alert('vEspecialidad = ' + vEspecialidad.text);
alert('vCorrelativo = ' + vCorrelativo.text);
alert('Ultimo Mensaje = ' + vProyecto.text + vFase.text + vTipo.text + vArea.text + vEspecialidad.text + vCorrelativo.text);
var idDoc=(vProyecto.text+vFase.text+vTipo.text+vArea. text+vEspecialidad.text+vCorrelativo.text);
frm.iddoc.value = idDoc;
}

una vez que se "submita" la forma puedes obtener dicho valor en el ASP con:

miID = request.form("iddoc") //para el caso del method="post" en la form

miID = request.querystring("iddoc") // para el caso de method="get" en la form

bueno, eso, espero que te sirva de ayuda.

Saludos y suerte.
__________________
:pirata: El arte de desarrollar es dejar que los otros lo hagan
  #6 (permalink)  
Antiguo 01/09/2004, 09:34
 
Fecha de Ingreso: noviembre-2003
Ubicación: En uno de los países mas lindos: CHILE
Mensajes: 70
Antigüedad: 20 años, 5 meses
Puntos: 0
pero esto seria enviando el valor a la pagina RecibeDatos.asp, pero como lo hago si estoy trabajando sobre una misma pagina????
por k en este caso k me hace la pagina RECIBEDATOS.ASP
como lo hago para k el valor k rescate en idDoc reconozca despues cuando hago <%ob_RSReg=Ob_Conn.Execute("SELECT Descripcion FROM LISTOTAL WHERE Numcompleto='"&IdD&"'")%>, pero dentro de la misma pagina??????????????
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 16:19.