:  Retur til startside  :  Til JavaScript startside

Objekter ejet af FORM          

       Text-typer :   text
textarea
password
hidden
              Checkbox-typer :   radio
checkbox
              select 
          options 
     Button-typer :   button
reset
submit
            
   fileUpload  
 
  :   Tilføj event-handler ved hjælp af et Function-object
Alle disse objekter tilhører en form, på denne side er der én form defineret ved <form name=Wform>. Hvert objekt er hængt op i en array der hedder document.Wform.elements .  Klik på den grønne kugle "elements" for at se den :
 :  elements
 
TextTyper :      
text  textarea  password  fileUpload      

Det viser sig, at typen textarea ikke eksisterer og sættes lig text.
Variable, metoder og eventhandlere er ens for de 4 objekter.
   variable   metoder   eventhandlere onKeyXxx og onSelect virker ikke med Netscape?
  defaultValue  
  form
  name
  type
  value
  blur()
  focus()
  handleEvent(event)  
  select()
  onBlur=
  onChange=
  onFocus=
  onKeyDown=  
  onKeyPress=
  onKeyUp=
  onSelect=
  Klik for at sætte alert på event-handler:  
       :  onChange (TChange)
       :  onKeyDown (TKDown)
       :  onKeyPress (TKPress)
       :  onKeyUp (TKUp)
       :  onSelect (Tsel)
Til eksemplerne i det følgende defineres her: <FORM name=Wform> En knap hvori der skrives hændelser svarende til event-handlerne:
<INPUT type=text name=TtextT value="Ttext">
<INPUT type=textarea name=TtextA value="Ttextarea">
<INPUT type=password name=TpassP value="Tpassword">
<INPUT type=fileUpload name=TfileU value="TfileUpload">
<INPUT type=FindesEj name=TFindesEjF value="TFindesEj">
Til afprøvning er der tilføjet event-handlere: onBlur='document.Wform.Tknap.value="texttype onBlur"' (hvor texttype f.eks kan være text, og onBlur kan erstattes med de andre eventhandlere. Ved onFocus er desuden tilføjet, at if (Tsel) this.select())

Variabelværdi:texttextareapasswordfileUploadFindesEj
  defaultValue  
  form
  name
  type
  value
  value (klik)  
Klik på kuglen for at afprøve metoden på objektet. Ved blur() kaldes først focus() og 5 sek senere blur().
Select betyder, at teksten i feltet skrives med høj intensitet, og ryddes ved første tasttryk, dog ikke piletast. Med Netscape kaldes onSelect sørm'e en gang extra, hvis feltet stadig står med høj intnsitet når det forlades. I.E og Netscape6: select() sætter focus, og teksten bliver selected. Netscape4.7 husker om teksten var selected sidst, hvis den var bliver den selected; ellers skal man først kalde select() og derefter focus(). Det sidste virker også i Netscape6, men i I.E. fjerner select() virkningen af focus().
Metode    text      textarea     password    fileUpload  
blur()
focus()
select()
   
hidden                  
hidden er "skærm-elementet der ikke er på skærmen", dvs det opfører sig som et skærm-element og sendes med hvis den tilhørende form sendes (med <submit>).
Det har alle de samme egenskaber som text-type elementer bortset fra dem der vedrører visning og indtastning - så er der kun variable tilbage, og af dem udgår desuden defaultValue.
Jeg definerer et hidden-"felt": <form name=Wform>
<input type=hidden name=hidnavn value=hidval>
  
variable ejet af hidden
    form
    name
    type
    value
  =  
  =  
  =  
  =  
 
 
 
   
Button- og checkbox typer :      
button  reset  submit  checkbox  radio       

variablemetoderevent handlere Til brug i det følgende defineres: <form name=Wform>
< input type=button name=Bbut value=BUTTON >
< input type=reset name=Bres value=RESET >
< input type=submit name=Bsub value=SUBMIT >
< input type=checkbox name=Cche value=CHECKBOX >
< input type=radio name=Crad value=RADIO >
Alle med alle 5 nævnte event-handlere, der skriver når der opstår et event på denne knap:
 : reset "denne" knap
form
name
type
value
  kun checkbox og radio:
checked
defaultChecked
blur()
click()
focus()
handleEvent(event)
onBlur=
onClick=
onFocus=
onMouseDown=
onMouseUp=
         
    form      name      type      value      checked      defaultChecked
button             
reset             
submit             
checkbox             
radio             
    blur()      click()      focus()     
blur() fjerner focus - for at se det skal objektet først have focus, så først kaldes focus() og der ventes 5 sek, så kaldes blur()
click() simulerer museklik
button
reset
submit
checkbox
radio
 
 
  
      select og options

Jeg laver lige en rulleliste med 4 options:
<form name=Wform><select name=sel1 size=2 mutible onXxxx=(skriv på knap)>
                 <option value="forste">tekst til første option</option>
                 <option value="anden ">tekst til anden  option</option>
                 <option value="tredje" selected>tekst til tredje option</option>
                 <option value="fjerde" selected>tekst til fjerde option</option></select>
select 's ejendomme (document.Wform.sel1.ejendom)      
form  = 
length  = 
name  = 
options[0]  = 
op1  = 
options  =      
options.length = 
selectedIndex  = 
type  = 
 
    :    blur()
    :    focus()
 
    :    handleEvent(event)
 
onBlur =
onChange =    
onFocus =
 
options kan opfattes som en Array ejet af select :
options 's ejendomme (document.Wform.sel1.options[].ejendom)      
 options[0]options[2]options[3]
defaultSelected
index
selected
text
value
 

Tilføj event-handler ved hjælp af et Function-object

Objekterne ovenfor (Niveau 4) savner event-handlerne onMouseOver og onMouseOut. De kan tilføjes med objekter af typen "Function" til objekterne:
  text  textarea  password  radio  checkbox  button  reset  submit  fileUpload  select
men ikke til
  options   images   hidden(naturligvis, den er usynlig).
Jeg vil ikke udelukke, at metoden også kan bruges til andre event-handlere eller andre objekter. En nemmere metode er beskrevet : 
  den tilføjer event-handleren fra en <A Href  -kode  -  denne metode virker på billeder (images) men ret dårligt på "button".

Her er kode der tilføjer event-handlere til en "BUTTON" -
NB: Det er mærkeligt nok IKKE en trykfejl at jeg har skrevet onmouseover med lutter små bogstaver :

<FORM name=FF><INPUT type=Button name=BB value="Kom min mus, jeg savner dig"></FORM>

<SCRIPT>
  document.FF.BB.onmouseover=
    new Function("document.FF.BB.value='Ih hvor er du dejlig';"
    + "window.status='Jeg elsker dig'");
  document.FF.BB.onmouseout=
    new Function("document.FF.BB.value='Kom snart igen!';"
    + "window.status='Tak fordi du kom og besøgte mig, lille mus'");
</SCRIPT>
Prøveknap: 
Den nemmere metode med <A Href... virker ikke i Netscape på en BUTTON, og er tvivlsom i InternetExplorer, hvor den "glemmer" statuslinien:

<FORM name=FFF>
<A Href=# onMouseOver="document.FFF.BBB.value='Det var dejligt at du kom'"
+ "window.status='Jeg elsker dig'"
onMouseOut="document.FFF.BBB.value='Kom igen min mus'"
+ "window.status='Jeg savner dig allerede'"
onClick="return false"><INPUT type=button name=BBB
value="Jeg savner dig min mus"></A></FORM>
Prøveknap:
 
   
 :  Til toppen af siden