19 messaggi dal 11 luglio 2001
Function Eval()
Dim strEval
Dim Qto
Qto = Session("Qto")
For i = 1 To 14
If Qto = i Then
strEval = "Eval" & i & "()"
strEval
End If
Next
End Function

Questo script vuole fare un test sul valore di una variabile di sessione (Qto) e se questo test risulta vero chiamare la funzione Eval(n) dove n è generato dinamicamente. Il nome della funzione viene scritto in strEval, ma poi? Inserendo semplicemente strEval non funziona, come devo fare a dire al server che strEval è una funzione e quindi essere lanciata?
Grazie fin d'ora per le vostre risposte.
Ciao
Pietro

17 messaggi dal 28 marzo 2001
ti conviene fare una unica funzione a cui passi un parametro(in questo caso la variabile stringa) e con una select case eseguire le istruzioni relative. ;)

blaupunkt!

blaupunkt!
101 messaggi dal 05 luglio 2001

Per cortesia!!

Function Eval(n)
Dim Qto
Qto = Session("Qto")
For i = 1 To 14
If Qto = i Then
Call Eval(i)
End If
Next
End Function

Ma cos'è che devi fare con il parametro n???

Ciao
2.907 messaggi dal 15 maggio 2001
Contributi
Per utilizzarla banalmente

<script languge=Vbscript>
Document.write nomefunzione()
</script>

19 messaggi dal 11 luglio 2001
Grazie a tutti, ho risolto.
Intanto però una scusa, quando ho scritto Eval(n) ho usato una brutta sintassi, intendevo dire che devo richiamare di volta in volta delle funzioni dal nome Eval1(), Eval2()... Credo che la mia distrazione nello scrivere la domanda abbia causato degli errori nella sua comprensione.

PS
Ecco come ho modificato la funzione:
Function Eval()
Dim strEval
Dim Qto
Qto = Session("Qto")
For i = 1 To 14
If Qto = i Then
strEval = "Eval" & Cstr(i) & "()"
Execute strEval
End If
Next
End Function

Attenzione, sono agli inizi e accetto ben volentieri correzioni e critiche.
Ciao



Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.