FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Inget panik fel men hur gör man nu? har löst det genom att ha det i onload i body men om man
ska fixa det mitt i en sida tex... Till problemet, får error att name tagen inte får finnas längre som den iofs inte får i strict läget i form. Men att använda id funkar ju inte, eller? kanske ska skrivas på något annat sätt. Gamla koden var printf("<script type=\"text/javascript\">"); printf("document.form_search.form_keyword.focus(); "); printf("</script>"); |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Supermoderator
|
Jo, id fungerar, du får skriva document.forms['id']....osv istället.
__________________
Full-stack developer, free for smaller assignments |
||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Klarade millennium-buggen
|
Citat:
Fungerar i alla nya webläsare. Har för mig att document.forms['id'] är mer MSIE specifikt. |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Supermoderator
|
Tror att bägge funkar, åtminstone i IE och Firefox.
__________________
Full-stack developer, free for smaller assignments |
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Medlem
|
Tackar Jonas, detta fungerade super
printf("document.getElementById('form_search').url _keywords.focus();"); Förstår bara varför jag inte testat/gjort detta innan, använder ju det på andra javascript koder *skratt* som typ document.getElementById(elementid).style.display = 'none'; |
||
![]() |
![]() |
![]() |
#6 | |||
|
||||
Mycket flitig postare
|
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:
Om man vill referera till enskilda element i ett formulär kan man använda t ex Kod:
document.forms[0].element[0] Eller: Kod:
document.forms[0].element['epost'] Man kan alltså läsa t ex värdet i ett fält med både: Kod:
document.getElementById('epost').value Kod:
document.forms[0].elements['epost'].value caipirinha: Till: Citat:
Kod:
document.getElementById('url_keywords').focus(); |
|||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Klarade millennium-buggen
|
Man bör dessutom lägga all javascript i externa filer och inte använda sig av några onClick ovs i sin htmlsida, utan istället attacha det från JS-filen.
Måste springa iväg nu, men jag kan lägga upp ett exempel senare. |
|||
![]() |
![]() |
Svara |
|
|