Hoi
Ik heb dus twee select boxen gevuld met data. Vanaf vandaag met 366 dagen.
Wanneer bij de linker een datum wordt geselecteerd moet de rechter select vanaf díe datum beginnen met de aanwezige opties. Ik heb daarvoor een code die werkt:
Deze werkt dus perfect bij de actie onChange --> update_eind_datum ('select_optioneel_start[1]','select_optioneel_eind[1]'). Nou is het alleen zo dat waneer ik dezelfde code gebruik bij de tweede select box onChange: update_eind_datum('select_verplicht_start[1]','select_verplicht_eind[1]')
gaat het script raar doen.
Wanneer bij selectbox 'select_optioneel_start[1]' een datum wordt geselecteer die lager is dan 'select_verplicht_start[1]' dan komen er bij de tweede select box 'select_verplicht_eind[1]' geen opties meer te staan....
Nou had ik daarvoor een omweg bedacht... misschien dat het een probleem met datum vergelijking was ofzo.
Werkt ook goed bij één selectbox. Als ik het scenario van twee selectboxen neem dan krijg ik in de tweede select box 'select_verplicht_eind[1]' alleen de datums die tussen 'select_optioneel_start[1]' en 'select_verplicht_begin[1]' inliggen
Duss..... als een van jullie een oplossing heeft hoor ik die graag
Ik heb dus twee select boxen gevuld met data. Vanaf vandaag met 366 dagen.
Wanneer bij de linker een datum wordt geselecteerd moet de rechter select vanaf díe datum beginnen met de aanwezige opties. Ik heb daarvoor een code die werkt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| <script language="javascript">
datum_array = new Array();
<?=$javascript_date_array;?>
var j = 0;
var to_update = "";
function update_eind_datum (current,to_update){
document.forms['form'].elements[to_update].length = 0;
j = 0;
i = 0;
for (i; i < datum_array.length; i++){
if (document.forms['form'].elements[current].value <= datum_array[i].value){
document.forms['form'].elements[to_update].options[j] = datum_array[i];
j++;
}
}
document.forms['form'].elements[to_update].disabled = false;
}
</script> |
Deze werkt dus perfect bij de actie onChange --> update_eind_datum ('select_optioneel_start[1]','select_optioneel_eind[1]'). Nou is het alleen zo dat waneer ik dezelfde code gebruik bij de tweede select box onChange: update_eind_datum('select_verplicht_start[1]','select_verplicht_eind[1]')
gaat het script raar doen.
Wanneer bij selectbox 'select_optioneel_start[1]' een datum wordt geselecteer die lager is dan 'select_verplicht_start[1]' dan komen er bij de tweede select box 'select_verplicht_eind[1]' geen opties meer te staan....
Nou had ik daarvoor een omweg bedacht... misschien dat het een probleem met datum vergelijking was ofzo.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| <script language="javascript">
datum_array = new Array();
<?=$javascript_date_array;?>
var j = 0;
var to_update = "";
var start_datum = false;
function update_eind_datum (current,to_update){
document.forms['form'].elements[to_update].length = 0;
j = 0;
i = 0;
start_datum = false;
for (i; i < datum_array.length; i++){
if (document.forms['form'].elements[current].value == datum_array[i].value){
start_datum = true;
alert (document.forms['form'].elements[current].value);
}
if (start_datum){
document.forms['form'].elements[to_update].options[j] = datum_array[i];
j++;
}
}
document.forms['form'].elements[to_update].disabled = false;
}
</script> |
Werkt ook goed bij één selectbox. Als ik het scenario van twee selectboxen neem dan krijg ik in de tweede select box 'select_verplicht_eind[1]' alleen de datums die tussen 'select_optioneel_start[1]' en 'select_verplicht_begin[1]' inliggen
Duss..... als een van jullie een oplossing heeft hoor ik die graag
[ Voor 15% gewijzigd door Verwijderd op 10-02-2005 17:16 ]