webForumDet fria alternativet

"Stänga av" Enter

JavaScriptur Javascript

8 svar · 635 visningar · startad av filipbh

Medlem sedan juli 2002405 inlägg
Frågan#1

Hej.. Jag vet att jag läste om detta förut men hittar det inte nu. Det handlar om Enter-knappen... Jag har ett formulär och vill att om man trycker på Enter så ska man komma till nästa fält bara och inte "submitta" formuläret. Nån som vet hur jag ska göra eller har länken till sidan där detta står?

Medlem sedan aug. 20002 975 inlägg
#2

Detta är något som måste göras med Javascript.
När PHP träder in så är formuläret redan postat.

Medlem sedan nov. 2000857 inlägg
#3

Flyttas från PHP..

Medlem sedan juli 2002405 inlägg
#4

Därför jag inte hittade det i PHP-forumet så klart ;) Nån som vet i Javascript då?

Medlem sedan maj 20018 027 inlägg
#5

Vad är det för fel på TAB? Det är väl bättre att följa konventionerna för användargränssnitt.

Medlem sedan feb. 20011 198 inlägg
#6

Lättaste att inte submitta vid enter är att ha en button istället för submit-knapp/image.

Medlem sedan apr. 20003 174 inlägg
#7

En variant för att iaf förhindra att formuläret postas då man trycker på enter-knappen:

<input type="text" onkeydown="eKey=document.all?window.event.keyCode:event.which;if(eKey==13)return false;">
Medlem sedan juli 2002405 inlägg
#8

Jo, att förhindra själva enterknappen är inget problem. Men jag vill att den ska byta fält. Det är ett formulär som jag själv använder och det är bara massa siffror och det är lättare att trycka enter än att trycka tab hela tiden eftersom jag "bläddrar i papper" med vänsterhanden.

Medlem sedan juli 2002405 inlägg
#9

Jag ändrade mina planer så att fältet byts automatiskt när rätt antal tecken har skrivits in. Det fungerar bra från första fältet till andra men vid det tredje problemet blir det fel. Den hoppar rätt mellan fälten men om jag skriver t.ex. 23 så blir som följer: Efter man tryckt på 2 så hamnar | framför 2:an och skriver man då 3 blir det 32.

Jag känner att detta låter väldigt konstigt men det är säkert någon som förstår vad jag menar ;)

Postar scriptet...

	var g_bDoMove = true;
	var g_sTenChar="";
	function doMove(){
		oObj = window.document.tidbokform.tbnr;
			
		if ((oObj.value.length==6)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 6)&&(g_bDoMove)){
			document.tidbokform.arbtid_starth.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 6) g_bDoMove = true;

		oObj = window.document.tidbokform.arbtid_starth;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.arbtid_startm.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

		oObj = window.document.tidbokform.arbtid_startm;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.arbtid_sluth.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

		oObj = window.document.tidbokform.arbtid_sluth;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.arbtid_slutm.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

		oObj = window.document.tidbokform.arbtid_slutm;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.rast_starth.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

		oObj = window.document.tidbokform.rast_starth;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.rast_startm.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

		oObj = window.document.tidbokform.rast_startm;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.rast_sluth.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

		oObj = window.document.tidbokform.rast_sluth;
			
		if ((oObj.value.length==2)&&(g_sTenChar != oObj.value)) g_bDoMove = true;
			
		if ((oObj.value.length == 2)&&(g_bDoMove)){
			document.tidbokform.rast_slutm.focus();
			g_bDoMove = false;
			g_sTenChar = oObj.value;
		}
		if (oObj.value.length < 2) g_bDoMove = true;

	}
129 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
126 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)