Avatar billede kbonline Nybegynder
24. marts 2003 - 15:28 Der er 2 kommentarer og
2 løsninger

javascript til ASP værdi ?

<script>
arr = new Array(1, 2, 3, 4, 5, 6, 10, 15, 927);
document.write(arr[Math.floor(Math.random() * arr.length)]);
</script>

dette udskriver et tilfældigt tal fra talrækken

kan jeg lave en værdi af dette tal i ASP ??

eks
<% tal = (det tilfældige tal) %>
Avatar billede unknown_someone Juniormester
24. marts 2003 - 15:32 #1
nej...

javascript afvikles på klientens maskine hvorimod asp kører på serveren - og på det tidspunkt hvor javascriptet skal kører er siden færdig på serveren og dermed kan der heller ikke afvikles asp

men er det kun et random tal du skal have burde det da også kunne laves i asp
Avatar billede fangel Nybegynder
24. marts 2003 - 18:23 #2
har tidligere skrevet dette udemærkede stykke tekst til sagen... dette omhandler dog PHP->JS, men samme prob... bare udskift .php med .asp (selvom det forringer teksten, asp er jo ikke på samme plan som php)

PHP er et server-side programmerings sprog (det er derfor at du skal have en server for at kunne teste det)... når en browser spørger efter en side, tænker serveren "ohhh, den fil hedder .php, så jeg må hellere få PHP til at kigge på den", der efter kigger PHP i filen efter <?php og ?> tegn, hvis den møder sådanne tegn fortolker den det er står imellem.
når dette er sket siger PHP "så, nu må du godt sende siden til browseren" til webserveren. så sender webserveren siden til browseren.
Når (og ikke før) siden så kommer frem til browseren tænker den "det kan være der står noget JavaScript i filen, jeg må hellere tjekke", så leder den efter <script> tegn, og hvis de finder sådan nogle, så fortolker browseren det der står imellem som JavaScript. derefter vises siden for brugeren.

DERFOR, kan du ikke få JavaScript til at udskrive en JavaScript variabel, da PHP er færdig med at kigge på siden, længe før JavaScript overhovedet ved om der er noget JavaScript på siden...

SÅ, det du vil lave er altså umulig med mindre du reloader din side... du kan altså KUN overføre fra PHP til JavaScript, men IKKE omvendt..

Morten
Avatar billede boris Mester
24. marts 2003 - 18:31 #3
Du kan sagtens generere en tilfældig værdi og overføre den til ASP.
F.eks. ved at kalde en side som hedder etellerandet.asp?mittal=927
hvis det nu var det sidste tal i din tabel, der blev trukket ud.
Så lader du etellerandet.asp bruge Request.QueryString("mittal")
Det er korrekt, at siden skal genindlæses for at ASP kan vise en ny værdi.
Avatar billede kbonline Nybegynder
24. marts 2003 - 22:44 #4
OK jeg har fået det til at virke ved at bruge ren asp

jeg bruger det her på forsiden www.feriefun.dk hvis i vil se det i funktion
(prøv at "reloade" ved at trykke på logoet i hjørnet)

sådan gjorde jeg :

<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("../huse.mdb")
Conn.Open DSN
%>

<%

Set rs_id = conn.execute ("select id from sommerhuse")

myarray = rs_id.getrows()

myMax = ubound(myarray,2)
Randomize 
myrow = Int((mymax * Rnd) + 1)  'find tilfældig række

id = myarray(0,myrow)

set rs = conn.execute ("select * from sommerhuse where id = " & id)

%>



tak for jeres forsøg
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