Avatar billede bongo20 Nybegynder
24. oktober 2002 - 11:16 Der er 27 kommentarer og
1 løsning

alertbox eller hvad ?

Jeg er ved at lave en hjemmeside med tilhørende database og med diverse søge funktioner osv.

Når man så vil fortælle den besøgende et eller andet, bruger man så alert("hallo") eller hvad er det mest brugte og hvad er det bedste når man fra Server siden skal afgøre hvilken box der skal fremkomme på klientsiden ?

Findes der gode eksempler ?
Avatar billede dmcn Praktikant
24. oktober 2002 - 11:21 #1
Alerts er som sådan fine nok til at "give besked" - de har bare et problem: De larmer! Dette irriterer mange brugere.
Personligt foretrækker jeg på serversiden at tjekke om alle input-felter f.eks. er udfyldt, og er de ikke så redirecter jeg til den oprindelige side, men sætter en fejlvariabel = true. På den oprindelige side tjekker jeg naturligvis for fejlvariablen og er den true, så giver jeg brugeren besked om hans fejl.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 11:25 #2
det jeg skal bruge den til, er at jeg checker om et bestemt søgekriterie findes i databasen,..findes det ikke vil jeg gerne fortælle brugeren at han skal prøve igen fordi det søgte ikke findes
Avatar billede dmcn Praktikant
24. oktober 2002 - 11:31 #3
Hvis det er en søgemaskine, så ville jeg klart holde mig fra alert'en.
Søgeord indtastes > Brugeren klikker Søg > Søgefunktionen indlæses og søgningen foretages > Resultatet "vurderes" > Brugeren sendes videre til resultatsiden.
Her ville det jo være oplagt at tjekke på resultatet med lidt serverside scripting og hvis antallet af returnerede rows = 0, så udskrives en fejlbesked hvor brugeren oplyses om at hans søgning ikke returnerede noget, og at han skal prøve igen.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 11:45 #4
hvordan udskrives den,.bare med en Response.write eller hvad,... jeg vil altså gerne have at vide hovrdan man sætter en variables værdi til noget bestemt på serversiden og så bagefter kunne spørge på denne værdi i et javascript,..det må da kunne lade sig gøre
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 11:46 #5
f.eks. virker en Session variable ikke,. den kan jo ikke bruges clientside,.. eller er det bare mig :)
Avatar billede dmcn Praktikant
24. oktober 2002 - 11:47 #6
Hvorfor vil du bruge JS, når du har et serversidesprog som kan udskrive HTML til klienten?
Avatar billede nikolajdu Nybegynder
24. oktober 2002 - 11:50 #7
Man kan sige meget om en alert boks, Køn er den ikke. Den larmer.

Men hold da op hvor er den effektiv. Et langt stykke af vejen vil jeg validere serverside, men en alert klientside den er grim, irriterende og brugeren kommer ikke videre før du har tvunget ham til at klikke på den.

Her er sådan en skmønhed rigtig nyttig.
Avatar billede dmcn Praktikant
24. oktober 2002 - 11:51 #8
<ss> < Her udskriver du almindelig HTML med dit serversidesprog - eftersom jeg ikke ved om du programmerer i PHP eller ASP kan jeg ikke komme med konkrete eksempler:
<script language="javascript">
var foo = <ss>;
if (foo != "") {
    alert(foo);
}
</script>

Viola - vi har overført en serverside variabel til JavaScript.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 11:54 #9
øhhh den forstod jeg vist ikke,...og det er ASP jeg bruger

Hvor kom den <ss> fra og hvad er det ?
Avatar billede dmcn Praktikant
24. oktober 2002 - 12:00 #10
<ss> udskifter du med det serversidesprog du nu bruger. Nu bruger jeg PHP, men du burde da kunne lure følgende eksempel:
<script language="javascript">
var foo = <?php print("Du har lavet en fejl!");?>;
if (foo != "") {
    alert(foo);
}
</script>
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 12:05 #11
skal siges jeg er lidt nybegynder i det her :)

kan man ikke sætte en var a = 1 på serversiden

og så i javascriptet,: if (a = 1) { alert("hej")}
Avatar billede dmcn Praktikant
24. oktober 2002 - 12:10 #12
Desværre ikke - serverside og clientside kan ikke snakke sammen direkte, så du bliver nødt til at sætte en clientside variabel lig en stump clientside text udskrevet med serverside funktioner. Besværligt men eneste løsning.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 12:41 #13
nå da,. ok men det tag der <ss> hvad er det for noget og skal den afsluttes med </ss> eller hvad ?
Avatar billede dmcn Praktikant
24. oktober 2002 - 12:48 #14
Som sagt, <ss> er bare et stykke pseudo-kode jeg har indsat - du skal udskifte det med et passende stykke serverside kode der udskriver en stump tekst.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 12:50 #15
jeg fatter ikke en skid af det,... :) undskyld
Avatar billede dmcn Praktikant
24. oktober 2002 - 12:55 #16
Okok - jeg fandt da ud af hvordan man udskriver med ASP:
<script language="javascript">
var foo = <%="Der opstod en fejl."%>;
if (foo != "") {
    alert(foo);
}
</script>

Burde kunne sættes direkte ind i en ASP-fil - så burde du kunne følge mig. :)
Avatar billede dmcn Praktikant
24. oktober 2002 - 13:08 #17
Og så glemte jeg en mindre detalje:
<script language="javascript">
var foo = "<%="Der opstod en fejl."%>";
if (foo != "") {
    alert(foo);
}
</script>

BOING! :)
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 13:52 #18
den der skal udskrive teksten : "Der opstod en fejl." ik ?

hvis ja,..hvad er så forskellen på det der og så alert("Der opstod en fejl")
Avatar billede dmcn Praktikant
24. oktober 2002 - 13:56 #19
Forskellen er, at du kan bruge serverside programmering til at udskrive fejlen. Du kan altså med ASP tjekke om:
1: Din database er nede - udskriv: Der opstod en fejl. Databasen er nede. Prøv igen senere.
2: Query'en blev ikke gennemført pga. ulovlige tegn - udskriv: Der opstod en fejl. Din søgning indeholder ulovlige tegn.
3: Query'en returnerede resultater - gjorde den ikke - udskriv: Din søgning gav ingen resultater.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 14:09 #20
skal det så ikke være :

<script language="javascript">
var foo = "<%="minVar"%>";
if (foo != "") {
    alert(foo);
}
</script>
?
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 14:10 #21
det er jo altså serversite jeg finder ud af om opslaget giver noget eller ej
Avatar billede dmcn Praktikant
24. oktober 2002 - 14:14 #22
Jo, sådan kunne du snildt gøre det. :)
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 14:16 #23
ok,.. men hvor skal minVar så være deklareret ?
Avatar billede dmcn Praktikant
24. oktober 2002 - 14:28 #24
I din ASP.
Avatar billede bongo20 Nybegynder
24. oktober 2002 - 14:37 #25
jeg får at vide at jeg ikke kan få fat i den variable fordi den er privat,.men i ASP ´en er den bare deklareret som dim a og senere a = "hej"

Hvad er det for noget ?
Avatar billede bongo20 Nybegynder
05. november 2002 - 15:31 #26
lægger du lige et svar :)
Avatar billede dmcn Praktikant
05. november 2002 - 15:38 #27
Så skidt - fik du det til at virke?
Avatar billede bongo20 Nybegynder
11. november 2002 - 14:06 #28
Jep det virker,. :-)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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