Avatar billede anjep Nybegynder
26. august 2003 - 12:05 Der er 9 kommentarer og
1 løsning

Kode bag en knap

Hej,

Er der nogen som har prøvet at lave en knap, hvor der bliver afviklet noget kode når brugeren klikker på den?

Det er ikke i en Form, bare en "ren" knap.....jeg ville gerne have den til at kalde en sub jeg har lavet...

Er der nogen der kan hjælpe

/Anders
Avatar billede nmh Nybegynder
26. august 2003 - 12:10 #1
mener du noget i denne stil?
<input type=button value="Tryk her" onClick="P()">

nu vil subrutinen P blive aktiveret.
Men det har jo ikke noget med asp at gøre umiddelbart?
Avatar billede anjep Nybegynder
26. august 2003 - 12:59 #2
Hmmmm ja det skulle jeg mene, men jeg kan ikke få det til at virke, her er min test kode:

Private Sub P()
response.redirect "default.asp"
End Sub

Hvis jeg bruger din kode direkte kommer den med en fejl, og hvis jeg skriver <%P()%> bliver koden kørt med det samme,uden at jeg klikker på knappen....

Nogle forslag?

Evt. hvis du skulle have noget kode liggene vil jeg meget gerne snuse til det ;-)
Avatar billede nmh Nybegynder
26. august 2003 - 13:06 #3
Du må ikke blande asp-kode med et script ude på klientmaskinen.
response.redirect, skal afvikles på serveren
Hvis du vil have din knap til det, skal din knap sørge for at en asp-siden default.asp bliver hentet.
Men det kan også sagtens gøres.
Så din procedure skal sørge for at siden default.asp hentes. Det sker på helt sædvanlig vis, men altså ikke noget med response.redirect.
Avatar billede nmh Nybegynder
26. august 2003 - 13:09 #4
Kode gemt bag <%....%> bliver afviklet på serveren.
En knap hos klienten kan kun aktivere en sub-rutine, der ligger hos klienten. (I asp.net er det dog anderledes)
Avatar billede nmh Nybegynder
26. august 2003 - 13:12 #5
Hvis du i din sub-rutine skriver
self.location="default.asp"
vil du få hentet din ønskede asp-side.
Avatar billede anjep Nybegynder
26. august 2003 - 13:17 #6
Så er jeg nok gal på den, da det som jeg har "kun" er en test....det som det skulle ende med når jeg havde lært om Sub og start af dem via en knap, var at en SQL update skulle blive fyret afsted uden at siden blev reloaded...

Så den kode jeg vil have startet kommer til at køre på serveren......det skulle vel være muligt, men hvordan?
Avatar billede nmh Nybegynder
26. august 2003 - 13:21 #7
koden, hvor du "fyrer" en sql-ordre af, skal afvikles som kode, der kører på serveren.
Det der sker hos klienten er at brugeren her blot vælger at få startet en passende asp-side. Så kører koden gemt i mellem <%....%> på serveren, og denne kode når aldrig ud til brugeren.
Avatar billede anjep Nybegynder
26. august 2003 - 13:22 #8
Hmmm....jeg prøv lige at lege lidt med det.....
Avatar billede anjep Nybegynder
29. september 2003 - 12:06 #9
Havde lige glemt dig, sorry.....her er dine point
Avatar billede nmh Nybegynder
29. september 2003 - 13:30 #10
ok. Takker for point. :o)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB