klicka här för att visa en JavaScript prompt ! <A HREF = "javascript:iljprompt()"> PROMPT</A> anropar funktionen iljprompt(). Placera funktionen mellan SCRIPT-taggar i HEAD-delen (se MINIMANUAL 1 lite grunder). function iljprompt() { iljpromptnamn= prompt('Skriv någonting','i den här rutan') //1 if(iljpromptnamn) //2 { alert('Du skrev "' + iljpromptnamn +'" i prompten.') //3 } else { alert('Du klickade på "Avbryt" ...') //4 } } Förklaringar till //1 -//4 1 Det som öppnar promptfönstret är följande: prompt('Skriv någonting','i den här rutan') Syntaxen är alltså: prompt(UPPMANING,TEXT I RUTAN) Inom första paret citationstecken skriver man den text som ska stå direkt på prompt-fönstret (i exemplet Skriv någonting), mellan andra paret citationstecken skriver man text som ska stå i textrutan (i exemplet i den här rutan). Om man vill att textrutan ska vara tom kan man låta det vara tomt mellan de här citationstecknen. Man kan också strunta helt i det andra argumentet så här: prompt('Skriv nå't!') I så fall kommer det att stå undefined i texrutan. Hela raden iljpromptnamn=prompt('Skriv någonting','i den här rutan') betyder att man stoppar in resultatet av prompten i variabeln iljpromptnamn 2 if-satsen kollar om textrutan i promptfönstret fyllts i och man klickat på OK-knappen och visar, om så är fallet, ... 3 en JavaScript-alert med texten Du skrev ... i prompten., där de tre punkterna alltså ersätts av det värde som för tillfället finns i variabeln iljpromptnamn, dvs det som användaren skrev i rutan. Citationstecken runt det som ska återges ordagrant medan variabeln iljpromptnamn inte omges av några citationstecken. I exemplet visas en alert bara för att illustrera vad som händer. I stället för alert()-raden kan man placera kod som kollar vad som skrevs i textrutan och som beroende på det gör olika saker, t ex: if(iljpromptnamn=='spooks') {window.location='things_ive_seen.html'} if(iljpromptnamn=='metallica') {window.location='st_anger.html'} På vanlig svenska blir det: Om webbsidebesökaren skrivit spooks i rutan så ska HTML-sidan things_ive_seen.html visas. Om webbsidebesökaren skrivit metallica i rutan så ska HTML-sidan st_anger.html visas. 4 om rutan i promptfönstret lämnades tom eller man klickade på Avbryt så visas en annan alert med texten Du klickade på... LÖSENORD? Så här kan en funktion, som visar en JavaScript prompt med uppmaning till användaren att ange lösenord, se ut: function iljloesen() { iljpromptnamn=prompt('Lösenord tack!','') //1 if(iljpromptnamn) { iljpromptnamn=iljpromptnamn.toLowerCase() //2 window.location=iljpromptnamn+'.html' } } Det hela går alltså ut på att "lösenordet" är detsamma som filnamnet. Skriver användaren sidaattvisa i rutan så visas filen sidaattvisa.html - om den finns. Det här fungerar av många anledningar inte särskilt bra. Ett bättre sätt att lösenordsskydda filer finns beskrivet under VARIA/ lösenord. Förklaringar till //1 - //2 1 Texten inom parentes slutar med , '', dvs ett kommatecken följt av två enkla citationstecken, och betyder att textrutan i prompten ska vara tom när prompten visas. 2 Den här raden gör om de bokstäver användaren skrivit i textrutan till små bokstäver och ska förstås bara användas om filnamnet består av bara små bokstäver. Fler JavaScript-exempel: onmouseover image/mouseover variant varannan dag bildväxl/animering välja bild i rullgardinsmeny meddelandefönster datum & tid meddelande onLoad onFocus lastModified image/mouseover onblur klocka history images/ animation ändra bakgrundsfärg timer rörlig text i textarea JavaScript confirm mer om datum öppna nytt fönster 1 öppna nytt fönster 2 JavaScript prompt flytande lager [fler JavaScript-exempel hittar du i menyn i ramen till vänster] Sidan gjordes av ilj@flowsim.se Senast ändrad 2 april 2004. Den här sidan hör hemma i ett ramsystem hos: www.flowsim.se JavaScript på svenska |