Thomas Meinike: getElementByName.focus()

Beitrag lesen

Hallo,

Die Funktion checkt dann, ob alles richtig ist und wenn nicht, wird der Feldinhalt gelöscht - kein Problem. (document.getElementsByName(name_des_feldes)[0].value="";)
Um es den User leichter mit der Neueingabe zu machen, will ich dann den focus auf das entsprechende Feld setzen. Genau das bekomme ich aber nicht hin. Probiert habe ich:
document.getElementsByName(name_des_feldes)[0].focus();
und
document.Name_des_Formulars.elements[''+name_des_feldes].focus();
und einige Spielarten davon :)

Ich sehe da kein Problem:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Test by TM 11/02</title>
</head>
<body>
<form action="">
<input type="text" name="abc"><br>
<input type="text" name="abc"><br>
<input type="text" name="abc"><br>
<input type="text" name="abc"><br>
<input type="text" name="abc"><br>
<input type="button" value="Test 1" onclick="document.getElementsByName('abc')[2].focus()">
<input type="button" value="Test 2" onclick="document.forms[0].elements['abc'][3].focus()">
</form>
</body>
</html>

Allerdings ist zu beachten, dass die Collection der Elemente mit gleichem Namen nur erzeugt wird, wenn es mehr als 1 gleichartig benanntes Element gibt.

MfG, Thomas