Visa ett inlägg
Oläst 2006-04-19, 03:02 #6
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Skärpning! getElementById() fungerar utmärkt från IE 5.

Om man använder den ursprungliga varianten:
document.forms[x] eller document.forms['name'] så hämtar får man en ref till "formobjektet". Antingen läser man av det genom index, dvs vilken ordning formulären kommer på sidan, document.forms[0] är det första. Detta fungerar även i urgamla webläsare. Alternativt använder man t ex document.forms['mittformular'] som ger en ref efter namnet i formulärtaggen (<form name="mittformular">). Att man IE får en ref även om man inte har angivit name utan istället id är en bugg som gör att det ändå fungerar i t ex IE.
Citat:
Har för mig att document.forms['id'] är mer MSIE specifikt.
Det är alltså inte IE specifikt utan det råkar bara fungera i IE, genom (den medvetna?) buggen.

Om man vill referera till enskilda element i ett formulär kan man använda t ex
Kod:
document.forms[0].element[0]
för första formulär-elementet (typ en input eller textarea)
Eller:
Kod:
document.forms[0].element['epost']
för fältet men namn epost i första formuläret.

Man kan alltså läsa t ex värdet i ett fält med både:
Kod:
document.getElementById('epost').value
och
Kod:
document.forms[0].elements['epost'].value
men i första fallet måste man ha en id="epost" i inputen och i andra fallet bara ett name="epost".

caipirinha:
Till:
Citat:
document.getElementById('form_search').url_keyword s.focus();
skulle jag föreslå att du använder:
Kod:
document.getElementById('url_keywords').focus();
så att du inte blandar de olika varianterna eftersom det är tvivelaktigt om det fungerar i alla webläsare.
martine är inte uppkopplad   Svara med citatSvara med citat