form: conoscere il valore delle opzioni selezionate

  • Creatore Discussione Creatore Discussione ali7.p
  • Data di inizio Data di inizio

ali7.p

Utente Attivo
6 Lug 2006
52
0
6
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>';

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="&gt;" /></a>

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?
 
non è altro ke

AJAX...

Non creare un submit ma un button. Esso avrà su onclick una chiamata a una funzione javascript che tramite DOM prenderà i valori dei campi e li sparerà sul link.
Per prendere i singoli valori in JS si usa la funzione :
document.getElementById('id_campo_input').value :mavieni:

A sto punto modifica la tua funzione AJAX in modo che il document.getElementById('id_campo_input').value dei campi che ti interessano, lo conosca prima di fare le sue operazioni di aggiornamento div
 
Ultima modifica:
allora... ho messo l'id mese_anno al form e il pulsante l'ho costruito così:
HTML:
<input type="button" value="&gt;" onclick="javascript:ajaxpage('pagina.php?mese="+getElementByID("mese_anno").mese.value+"&anno="+getElementByID("mese_anno").anno.value"','leftcolumn')".'
/>

ma come faccio a modificare la funzione in modo che il document.getElementById('id_campo_input').value dei campi che ti interessano, lo conosca prima di fare le sue operazioni di aggiornamento div??

Io la funzione l'ho copiata di sana pianta, non so come metterci le mani... cosa devo aggiungere?
 
Non capisco...

a cosa serve la funzione in pratica???
Devi aggiornare un div in base ai valori dei campi no??

document.getElementById('nome_campo').value;

Ti da il valore del singolo campo.
Prendi tutti i valori che ti servono e poi fai quello che devi cn la tua funzione
 
grazie della risposta, comunque poi ieri sera sul tardi ho risolto mettendo document.getElementById non nella chiamata della funzione, ma dentro alla funzione. Nella chiamata, come mi avevi indicato tu, non funzionava.
Grazie per l'input :-)
 

Discussioni simili