<html>
<head>
<title>Untitled</title>
</head><body>
<select name="columnPos" size="1" onchange=""; onFocus=""></select>
<select name="columnPos" size="1" onchange=""; onFocus=""></select>
<select name="columnPos" size="1" onchange=""; onFocus=""></select>
<select name="columnPos" size="1" onchange=""; onFocus=""></select>
<select name="columnPos" size="1" onchange=""; onFocus=""></select>
Das muss innerhalb von <form> ... </form>
gesetzt werden, denn erst dann kannst du darauf zu greifen (deshalb funktioniert es erst nach dem alert() ).
<script language="JavaScript">
Es lautet:
<script type="text/javascript">
<!--
for(var i = 1; i < 6; i++)
Du willst alle 'columnPos' Felder des Formulars durchgehen?
Das ist ein Array des Formulars.
alert(document.forms[0].columnPos.length) sagt dir wieviele Elemente es hat. Dann brauchst du auch keine Schleife mit festen Werten, sondern kannst Variabel arbeiten.
for(var i = 0; i < document.forms[0].columnPos; i++)
{
//alert("");
for(var j = 1; j < 6; j++)
{if(i==j){
NewOption = new Option(j,j,false,true);
}else{
NewOption = new Option(j,j,false,false);
Es reicht:
var newOption = new Option, j, j, false, (i==j));
}
document.getElementsByName('columnPos')[i-1].options[document.getElementsByName('columnPos')[i-1].length] = NewOption;
Formularfelder kannst du einfacher direkt ansprechen über document.forms[..]
document.forms[0].columnPos[i].options[j - 1] = newOption;
Struppi.