Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > HTML, Javascript y otros
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-10-2006
Ricardo Alfredo Ricardo Alfredo is offline
Miembro
 
Registrado: may 2003
Ubicación: Santiago - Chile
Posts: 65
Poder: 22
Ricardo Alfredo Va por buen camino
llamar funcion asp desde form

Hola a ver si me pueden ayudar miren que estoy pegado con esto y he buscado informacion sin lograr solucionar mi problema

Tengo un asp el cual tiene una funcion javascript que me valida el formulario , pues ahora debo validar el contenido efectuando consultas a la base de datos.

La consulta es como puedo llamar desde javascript un asp o como puedo llamar una funcion en asp que esta contenida en el mismo formulario para desde ahi llamar primero la funcion javascript y despues dependiendo si esta ok el form efectuar las validaciones contra la base datos.

he probado
form name="theForm" method="post" onSubmit=<%valida_asp()%>
para que me llame la funcion en asp y varios otras formas pero no he logrado nada.

tambien llame directamente la funcion javascript con
form name="theForm" method="post" onSubmit="return valida();">
pero no se como llamar mi funcion asp desde javascript

si me pueden ayudar se los agradesco.
Responder Con Cita
  #2  
Antiguo 11-10-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Hola.

Mientras asp se ejecuta del lado del servidor, javascript se ejecuta del lado del cliente, por lo que desde javascript no podes invocar una función de asp.

Lo que si es posible es invocar un script de asp, que es el principio básico del funcionamiento de AJAX, aunque si las validaciones podes hacerlas todas con javascript, mejor eso.

Si de todas formas queres hacerlas con asp, podes pensar también en hacer un post de los datos introducidos por el usuario, y si algo sale mal producir nuevamente la misma página con los datos cargados y algún mensaje de error que indique cual es el problema.

Finalmente, si te inclinas por ajax, te recomiendo buscar ayuda sobre el objeto XMLHttpRequest.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 11-10-2006
Ricardo Alfredo Ricardo Alfredo is offline
Miembro
 
Registrado: may 2003
Ubicación: Santiago - Chile
Posts: 65
Poder: 22
Ricardo Alfredo Va por buen camino
gracias y existe otra forma que una vez finalizado la funcion javascript inmediatamente me llame la funcion asp.

porque lo que sucede es que el form es dinamico y lo que necesito es grabar en la base datos las respuestas del usuario una vez que ha contestado todo, eso es finalmente mi objetivo.

lo que realiza la funcion javascript es validar que complete integramente el formulario

gracias
Responder Con Cita
  #4  
Antiguo 11-10-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Creo que te estás complicando. Un formulario tiene un evento OnSubmit que es donde haces la validación JavaScript. Y tiene un atributo Target que indica el script (asp en este caso) que recibe los valores del formulario. Este script es el que guadará los datos en la base, y no tienes ninguna necesidad de llamar directamente desde JS una función en dicho script.

Agrego (para que quede más claro)

Tu formulario html se verá así:

Código:
<form method='post' action='guarda_datos.asp' onsubmit='return validaDatos()'>

<!-- Aquí controles para recabar datos -->

<input type='submit'>
</fom>
Cuando presiones el botón Submit, se ejecutará la función JavaScript validaDatos, en la que tú haces todas las validaciones que requieras y regresas true o false dependiendo de si pasa o no la validación. Si la validación pasa, entonces los datos se enviarán al script guarda_datos.asp que ya está del lado del servidor. Este script hará lo que tenga que hacer para comunicarse con la base de datos y guardarlos, así como generar la página de respuesta.

// Saludos

Última edición por roman fecha: 11-10-2006 a las 04:15:29.
Responder Con Cita
  #5  
Antiguo 11-10-2006
Ricardo Alfredo Ricardo Alfredo is offline
Miembro
 
Registrado: may 2003
Ubicación: Santiago - Chile
Posts: 65
Poder: 22
Ricardo Alfredo Va por buen camino
ok, gracias tienes toda la razon , cree un asp que me grabara los datos y funciono en forma correcta pero este solo me graba el ultimo de la grilla, como puedo hacer para que me recorrar completo la grilla y me grabe el contenido

en otras palabra como recorro la grilla enviado los respuestas del user para grabar

lo que tengo es una grilla la cual se crea con los nombres de campo en forma automatica segun el dato que esta guardado en la base datos, podemos por ejemplo tener 5 preguntas las cuales son del tipo verdadero/falso entonces en la grilla muestro lo siguiente

Secuencia, pregunta, Verdadero, Falso

donde verdadero y falso son radio boton

entonces el javascripts me valida que me contestes las 5 preguntas si este es verdadero me llama el asp y este debiera grabar las 5 respuestas pero solo me graba una.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Como llamar una funcion de una DLL? paty_rlopez Varios 3 26-06-2006 16:25:25
Llamar a una funcion almacenandola en una variable papulo Varios 15 02-02-2006 19:19:25
llamar una dll desde php jzginez PHP 4 20-01-2006 04:53:09
Llamar al Set desde el Get Ohcan OOP 33 30-03-2005 16:44:04
problema al llamar una función sgarrido Varios 3 27-07-2004 02:14:33


La franja horaria es GMT +2. Ahora son las 01:20:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi