Nu har du blandet asp-kode med kode som bliver sendt til klienten. Kode anbragt mellem <% og %> bliver kun afviklet på serveren. Din sub-rutine fejl() er anbragt i et script, som sendes til klienten. Denne rutine kan ikke aktiveres af kode, der kører på serveren.
Så hvis du vil have en fejl til at kalde en procedure, der kan håndtere en fejlsituation, skal denne rutine ligge i den kode, der afvikles af på serveren.
Og så ville jeg nok bruge JavaScript, da det i modsætning til VBScript, understøttes af alle browsere..
Mit eksempel med java script:
<% On error resume next
if err.Number <> 0 then response.write "<script type=""text/JavaScript"">" response.write "alert(""" & err.description & """);" response.write "</script>" end if %>
Eller:
<% On error resume next
sub fejl() response.write "<script type=""text/JavaScript"">" response.write "alert(""" & err.description & """);" response.write "</script>" end sub
function fejl(besked) response.write "<script type=""text/JavaScript"">" response.write "alert(""" & besked & """);" response.write "</script>" end function
if err.Number <> 0 then fejl(err.description) end if %>
Så kan du osgå bruge: fejl("hello world") Så vil en dialogbox komme frem med tekst "hello world"..
function fejl(besked) besked = replace(besked, chr(34), "\" & chr(34)) ''' dette er en ny linie response.write "<script type=""text/JavaScript"">" response.write "alert(""" & besked & """);" response.write "</script>" end function
Denne linie erstatter "-tegnet med \", hvilket opfattes som et almindeligt "-tegn, af java script:
<citat> Denne linie erstatter "-tegnet med \", hvilket opfattes som et almindeligt "-tegn, af java script: </citat>
Dvs, den erstatter "gåseøjne" med "backslash" + "gåseøjne".. Eksempel: Hans "Hansi" Hansen bliver til Hans \"Hansi\" Hansen
Når JavaScipt ser \" forstår den at den skal vise gåseønje i stedet..
I JavaScript starter man på en streng/tekst, vedat starte med enten '-tegnet eller "-tegnet. Hvis man bruger start-tegnet for anden gang, aflsluttes strengen. Så opstår der fejl fordi der står noget efter '-tegnet eller "-tegnet.
Eksempel (forkert): alert("Hans "Hansi" Hansen");
strengen afsluttes lige før "Hansi", fordet start-tegnet afsluttes af "-tegnet lige før Hansi.
Giver det mening, eller skal jeg prøve igen? (du siger bare til)
jbjerre> Det var så lidt :-) Hvis man forstår koden, kan man nemmere tilpasse den :-)
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.