• User

    form: conoscere il valore delle opzioni selezionate

    Ho il seguente form di selezione di mese - anno, con l'anno che comprende cinque anni prima e cinque anni dopo quello in corso

    [PHP]$form='<form name="formcal" method="get" action="#">
    <table width="100%" border="0" cellspacing="0" cellpadding="1"><tr><td align="left" valign="middle" nowrap width="1%">
    <select name="mese">';

    for($ms=1;$ms<=12;$ms++) {
    if ($ms==$dati['mese_num']) {$sel="selected";} else $sel="";
    $form.= "<option value="$ms" $sel>".print_month($ms)."</option>";
    }

    $form.='</select><select name="anno">';
    for($ys=($dati['anno']-5);$ys<($dati['anno']+5);$ys++) {
    if ($ys==$dati['anno']) {$sel="selected";} else $sel="";
    $form.= "<option value="$ys" $sel>$ys</option>";
    }
    $form.='</select></td><td align="left"> INVIO </td></tr></table></form>';[/PHP]

    Al posto di invio, ovviamente, va il pulsante...
    e qui ho il mio problema: voglio che il pulsante non invii i dati al server e ricarichi la pagina, ma che i dati vangano passati come parametri a un link richiamato da una funzione javascript che carica una determinata pagina in un determinato div.
    In pratica qualcosa come:
    [PHP]
    <a href="javascript:ajaxpage('."'pagina.php?mese=$ms&anno=$ys','leftcolumn');".'"><input type="button" value=">" /></a>[/PHP]

    Solo che ovviamente così $ms=13 e $ys=2016, che sono gli ultimi valori con i quali è stato costruito il form.
    Come posso invece ricavare il valore dei parametri selezionati?


  • User

    Ho provato così:
    [HTML]<input type="button" value=">" onclick="javascript:ajaxpage('pagina.php?mese="+getElementByID("mese_anno").mese.value+"&anno="+getElementByID("mese_anno").anno.value"','leftcolumn')".'
    />[/HTML]
    ma non funziona.

    Nessuno mi può aiutare, please?


  • User Attivo

    Puoi accedere ad i valori di un campo di un form ad esempio con la formula:
    [HTML]document.nome_form.nome_campo.value[/HTML]
    quindi nel tuo caso puoi provare con
    [HTML]document.formcal.mese.value[/HTML]


  • User

    Grazie, adesso provo anche così.

    Avevo risolto mettendo getElementByID all'interno della funzione enon nella chiamata, ma imparare metodi alternativi è sempre utile 🙂