Problemino..in una pagina html, io mi creo un array di questo tipo:
<script language="JavaScript" type="text/javascript">
articolo=new Array(
new Array(
new Array('A1',1),
new Array('A2',2),
new Array('A3',3)
),
new Array(
new Array('A4',4),
new Array('A5',5)
),
new Array(
new Array('A6',6),
new Array('A7',7)
)
);
</script>
e poi ho qst funzione:
<script language="JavaScript" type="text/javascript">
<!--
function fillSelectFromArray(selectCtrl, itemArray, goodPrompt, badPrompt, defaultItem)
{
var i, j;
var prompt;
// empty existing items
for (i = selectCtrl.options.length; i >= 0; i--)
{
selectCtrl.options[i] = null;
}
prompt = (itemArray != null) ? goodPrompt : badPrompt;
if (prompt == null)
{
j = 0;
}
else
{
selectCtrl.options[0] = new Option(prompt);
j = 1;
}
if (itemArray != null)
{
// add new items
for (i = 0; i < itemArray.length; i++)
{
selectCtrl.options[j] = new Option(itemArray[i][0]);
if (itemArray[i][1] != null)
{
selectCtrl.options[j].value = itemArray[i][1];
}
j++;
}
// select first item (prompt) for sub list
selectCtrl.options[0].selected = true;
}
}
//-->
</script>
il risultato è che in base a quello che seleziono da una tendina contenente dei valori (1, 2, 3) mi apparirà in un'altra simil-temdina il valore relativo..
<form name="Articolo">
<select name="categoria" class="textarea" onChange="fillSelectFromArray(this.form.Articolo, ((this.selectedIndex == -1) ? null : articolo[this.selectedIndex-1]));">
<option value="0">-- selezionare --</option>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
<SELECT multiple NAME="Articolo" class="textarea" SIZE="5">
<OPTION>--</OPTION>
</select>
</form>
e fin qui tutto bene..ma se io avessi 3 checkbok invece della tendina con 1, 2, 3 e volessi la stessa cosa ovvero scrivere il loro valore solo se checkati???