webForumDet fria alternativet

Få fokus på formulär med onLoad

JavaScript

27 svar · 478 visningar · startad av Psedo

Medlem sedan jan. 200310 inlägg
Frågan#1

Hej alla

Ursäkta den ngt flummiga topicen, kom inte på nå bättre :|

Jag har ett problem som jag inte ens vet om det går att lösa..

Jag har en sida med formulär

Det jag vill åstadkomma är att en <input>-ruta automagiskt får fokus (alltså att markören blinkar i den) när sidan är färdigladdad.

Vill alltså undvika att själv behöva trycka där.

Går det på nå vänster?

<body onLoad()>-funktionen ska användas, förmodar jag ;)

Ha're

Medlem sedan juni 200032 967 inlägg
#2
<body onload="document.formuläret.elementet.focus();">

Byt formuläret och elementet till mer passande namn.

Mvh,

Medlem sedan mars 20015 287 inlägg
#3

<BODY onLoad="document.formen.namnet.focus()">

Medlem sedan mars 20015 287 inlägg
#4

Hmpf...

Medlem sedan juni 200032 967 inlägg
#5

solbulle, jag ber om ursäkt.

Medlem sedan jan. 200310 inlägg
#6

Ah, var det så enkelt

Danke!

Medlem sedan nov. 20017 144 inlägg
#7

Välkommen till WF! Heter det!

Medlem sedan juni 200032 967 inlägg
#8

JA!

Skäms på mig, och skäms på solbulle!!!

Välkommen till wF, Psedo! :bire

Medlem sedan mars 20015 287 inlägg
#9

Attans! Jag lär mig Aldrig!

Välkommen till wf Psedo!

Som försvar får jag väl iofs säga att vi är kvicka i svaren. ;)

@nders: e' lugnt.

Medlem sedan jan. 200310 inlägg
#10

Tack tack!

Det funkade ju prima.. Ett problem bara:

På input-rutan är namnet satt till "add_genre[gen_namn]", men javascriptet gillar inte mina fina klamrar.

Finns det någon utväg ur detta (elände)?

Medlem sedan jan. 200310 inlägg
#11

Den frågan var tydligen lite lurigare... ;)

Medlem sedan juni 200032 967 inlägg
#12

Lösning: byt namn på fältet. :)

Mvh,

Medlem sedan jan. 200310 inlägg
#13

Mmmmjo =)

Men jag vill ha formulär-datan i en fin liten array siddu. Därav klamrarna

Medlem sedan nov. 20017 144 inlägg
#14

Går det inte att lägga in siffran i klamarna som motsvarar den aktuella input-fältet då?

<body onload="document.formuläret.add_genre[0].focus();">
Medlem sedan jan. 200310 inlägg
#15

Är inte riktigt hundra på vad du menar men det verkar iaf som javascriptet inte alls tycker om klamrar.

Har jag klamrar med så skiter det sig helt enkelt

Har provat att sätta ett backspace före klamrarna, (som man gör i php) men det hjälpte nada

Medlem sedan mars 20015 287 inlägg
#16

Visa gärna lite mer hur koden ser ut nu.

Vilket javascript gillar inte klammrar?

Medlem sedan nov. 20017 144 inlägg
#17

Detta ger nu focus på den andra textrutan(0 är den första).

<body onload="document.form1.add_genre[1].focus();">
<form name="form1" method="post" action="">
<input type="text" name="add_genre">
<input type="text" name="add_genre">
<input type="text" name="add_genre">
<input type="text" name="add_genre">
<input type="text" name="add_genre">
<input type="text" name="add_genre">
</form>
Medlem sedan jan. 200310 inlägg
#18

Ska bli

Här är då en avkortad version av formuläret. Efter submit snappas formulär-datan upp, snyggas till och skyfflas till slut in i en mysql-db

<form action="<?=$PHP_SELF?>" method="post" name="genre">
<table width="300" class="formtable">
 <tr>
  <td class="header_2">
	Add genre
  </td>
 </tr>
 <tr>
  <td>
	<input type="text" name="add_gen[gen_namn]" class="forminput">
  </td>
 </tr>
 <tr>
  <td>
  	<input type="submit" value="Send!" class="forminput">
 	<input type="reset" value="Reset!" class="forminput">
  </td>
 </tr>
</table>
</form>

Här är nuvarande onLoad-funktion

<body onload="document.genre.add_gen[gen_namn].focus()">
Medlem sedan nov. 20017 144 inlägg
#19

Varför heter textfältet "add_gen[gen_namn]" då?

Medlem sedan jan. 200310 inlägg
#20

Därför att efter submit så har PHP automatiskt gjort om den till en array. Det gör det himla enkelt att hantera formulärdatan

Verkar som om det krockar med php och javascript här.. suck

279 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
153 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)