von Eingabefeld zu Eingabefeld springen

Atse87

Grünschnabel
moin, wollt ma fragen ob es sich bei nem form feld mit php irgendwie realiesieren lässt
das, der cursor wenn er am ende eines feldes ist gleich ins nächste springt, quasi wie wenn ich bei nem prog nen key eingeben muss...
oder geht das vll auch irgendwie mit html ?

mfg
thx im vorraus
 
Was verstehst du unter dem Ende eines Eingabefeldes? Das optische Ende, das physische Ende (maximale Zeichenanzahl)?
 
das optische. bzw, hab die maximale länge ja angegeben, und die is genauso lang wie das feld ansich....
aber, wenn das blos mit java script is auch nen bissl blöd, weil damit kenn ich mich überhaupt nicht aus.

mfg
 
Herauszufinden, ob das optische Ende erreicht ist, ist etwas schwierig. Denn dazu müssen neben dem Eingabewert auch Faktoren wie Feldbreite, Polsterung, Schriftart und Schriftgröße berücksichtigt werden. Ob die maximale Anzahl von Zeichen erreicht ist, ist jedoch einfacher, beispielsweise:
HTML:
<input type="text" size="3" maxlength="3" class="autotab">-<input type="text" size="3" maxlength="3" class="autotab">-<input type="text" size="3" maxlength="3" class="autotab">-<input type="text" size="3" maxlength="3" class="autotab">-<input type="text" size="3" maxlength="3" class="autotab">
<script type="text/javascript">
	document.onload = function() {
		var inputElements = document.getElementsByTagName("input");
		var autotab = new Array();
		for( var i=0; i<inputElements.length; i++ ) {
			if( !inputElements[i].className.match(/\s*autotab\s*/) ) {
				continue;
			}
			autotab.push(inputElements[i]);
		}
		for( var i=0; i<autotab.length-1; i++ ) {
			autotab[i].onfocus = new Function("this.setAttribute('defaultValue', this.value)");
			autotab[i].onkeyup = new Function("if(this.getAttribute('maxlength')>0 && this.value.length==this.getAttribute('maxlength') && this.getAttribute('defaultValue')!=this.value) { autotab["+(i+1)+"].focus(); autotab["+(i+1)+"].select(); }");
		}
	}
</script>
 

Neue Beiträge

Zurück