Form: text
Vi behandler følgende input typer under denne overskriften: input:text, input:password og textarea.
.text
text er en enkel mekanisme for å lese inn en tekststreng uten linjeskift. For eksempel slik:
HTML-koden ser slik ut:
<form action="http://www.ia.hiof.no/~borres/cgi-bin/forms/std.py"
method="get">
<div>
<input type="text" name="message"/>
<input type="submit" value="Send"/>
</div>
</form>
Vi kan spesifisere flere attributter enn name og type til et text-felt: value, maxlength og size. F.eks. slik:
HTML-koden ser slik ut:
<form action="http://www.ia.hiof.no/~borres/cgi-bin/forms/std.py"
method="get">
<div>
<input type="text" name="message" value="hei" maxlength="10" size="15"/>
<input type="submit" value="Send"/>
</div>
</form>
value har en forutbestemt verdi, som kan endres. Det er denne verdien som plukkes opp av skriptet. Verdien endres når vi skriver inn i feltet. maxlength sier oss hvor mange tegn feltet skal akseptere. size sier hvor stort (langt) feltet er. Her er size større enn maxlength, og vi vil ikke få skrevet inn i de 5 siste tegnposisjonene. Dersom det er omvendt, vil teksten scrolle. Dersom vi slår return vil vi aktivere send-knappen. Dette er en oppførsel vi kjenner fra dialogbokser i vanlig programmer, der OK-knappen ofte fungerer som default avslutt/lukk knapp.
.password
Passordfelt er i hovesak som tekstfelt. Den eneste forskjellen er at ekko på den intastede teksten markeres som stjerner, prikker e.l.
HTML-koden ser slik ut:
<form action="http://www.ia.hiof.no/~borres/cgi-bin/forms/std.py"
method="get">
<div>
Melding:
<input type="text" name="message" size="15"/>
Passord:<input type="password" name="pwd" size="15"/>
<input type="submit" value="Send"/>
</div>
</form>
Merk at passord-feltet har ingen annen sikkerhet enn at teksten skjules for øyet i inntastingsformen. Dataene trasporteres som om det var vanlig tekst. Dersom vi bruker metoden get, som ovenfor, vil du se passordet i klartekst i adressefeltet til nettleseren.
.textarea
textarea skiller seg litt fra de andre tekstfeltene ved at elementet selv heter textarea. F.eks. slik:
<form action="http://www.ia.hiof.no/~borres/cgi-bin/forms/std.py"
method="post">
<div>
<textarea name="message" cols="15" rows="5">
</textarea>
<input type="submit" value="Send"/>
</div>
</form>
Attributtene cols og rows er selvforklarende. Du kan kontrollere hvordan teksetn brekkes ved hjelp av stilsett. Den gamle wrap-attributten er ikke lovlig i XHTML
Merk en liten detalj som kan være ganske irriterende. Dersom kildekoden til html-fila innholder en tabulator foran textarea-elementet, vil tabulatoren være effektiv i selve tekstfeltet. Du merker dette hvis du plasserer cursor i feltet og klikker. Ovenfor er tekstfeltet plassert uten tabulator.