Jeg kan ikke bruge if-statement og jeg tror heller ikke jeg kan bruge select case... For jeg har noget kode der ser ca. sådan ud:
1. If not Len("" & strEmailAddress) = 0 then 2. objJMail.AddRecipient strEmailAddress 3. Else 4. 5. End If 6. ...og så skal jeg have noget i linje 4. som går til linje 32. hvis altså at ikke strEmailAddress = 0, hvordan gør jeg det???
Det er ikke for at være ond, men typisk betragtes behovet for en Goto at koden er struktureret for dårligt. I C og Visual Basic er der en "function/metode" som hedder goto. Hvis man læser omkring dem på nettet og i bøger er de omtalt i en bisætning og der står altid at man aldrig bør bruge goto, da det giver total ustruktureret kode. I VB vil det se sådan ud:
if fejl = true then Goto labelnavn end if ... mere kode
labelnavn: ... hopper herned
Men den mulighed er fjernet i VBScript/ASP.
Et alternativ kunne være at lave en fejl variable..: error_found = false og så tjekke på den ned igennem koden:
do while xxxxx error_found = false
If not Len("" & strEmailAddress) = 0 then objJMail.AddRecipient strEmailAddress Else error_found = true End If
if error_found = false then ...gør noget End if rs.MoveNext Loop
----
Et andet alternativ kunne være: On Error Resume Next Som gør at hvis der er fejl i en linie forsætter den bare til næste linie..:
On Error Resume Next
do while xxx
If not Len("" & strEmailAddress) = 0 then objJMail.AddRecipient strEmailAddress End If
rs.MoveNext Loop
---- Et tredje alternativ, der findes noget som hedder Exit (do|for|function|sub). Så hvis du kan pakke koden ind i en for inden i do loopet så kan du lav en Exit For hvis der opstår et problem:
do while xxxxx
'hvis man skriver xxx=1 to 1 så vil for sætningen blive kørt en gang, 'eller indtil den stoppes med Exit For for xxx = 1 to 1 If not Len("" & strEmailAddress) = 0 then objJMail.AddRecipient strEmailAddress Else Exit For 'Hopper ud af for sætningen nede ved next End If
Sub line32 ' Put det som skal være på linie 32 ind her if noget then response.write "linie 32" end if end sub
1. If not Len("" & strEmailAddress) = 0 then 2. objJMail.AddRecipient strEmailAddress 3. Else 4. call lini32 5. End If 6.
* MoRoax.dk
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.