Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    calendario con select e javascript

    perchè questo codice nella pagina a cui punta l'action del form, al posto del giorno viene visualizzato il numero del mese?
    questo succede solo la prima volta...se reinserisco i dati nella form funziona correttamente.

    codice:
    <?
    $mesi = array("Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre");
    $gcorr = date('j');
    $mcorr = date('n');
    $acorr = date('Y');
    ?>
    <form name="index" action="visualizza.php" method="post">
            <select type="text" name="m" onchange="aggiornaMese(this.form.g,this.selectedIndex)">
    	      <?
    	      for ($i=1;$i<=count($mesi);$i++){
    	      ?>
    	        <option value=<?=$i?><?if ($i==$mcorr) echo " selected"?>><?=$mesi[$i-1]?></option>
    	      <?
    	      }
    	      ?>
            </select>
    	    <select type="text" name="g">
    		  <?
    		  for ($i=0;$i<31;$i++){
    		    $j = $i+1;
    		  ?>
    		    <option value=<?=$j?><?if ($j==$gcorr) echo " selected"?>><?=$j?></option>
    		  <?
    		  }
    		  ?>
    	    </select>
    	    <select type="text" name="a">
    		  <?
    		  for ($i=0;$i<3;$i++){
    		    $anno = date(Y)+$i;
    		  ?>
    		    <option value=<?=$anno?><?if ($i==$acorr) echo " selected"?>><?=$anno?></option>
    		  <?
    		  }
    		  ?>
    	    </select>
    	    <input type="submit" name="vis" value=Visualizza>
          </form>

  2. #2
    ops..mi sono dimenticato lo script:
    codice:
    <script>
      function aggiornaMese(source,valore){
        giorni=new Array(31,29,31,30,31,30,31,31,30,31,30,31);
        for (i=0;i<=31;i++){
          source.options[i]=null;
        }
        for (i=0;i<giorni[valore];i++){
          source.options[i]=new Option(i+1,valore+1);
        }
      }
    </script>

  3. #3
    forse lo script aggiorna la select del giorno ma non viene selezionata nessuna voce, così quando non scelgo il giorno viene preso il numero del mese (perchè questo non l'ho ancora capito, però).

  4. #4
    ho provato con la funzione javascript a selezionare di default il primo elemento così:
    codice:
    source.options[1].selected = "true";
    ma, a meno che abbia sbagliato questa riga, sembra non essere quello il problema.

    aiuto!!!!

  5. #5
    up :quote:

  6. #6
    dai ragazzzi!!!!
    aiutatemi!

  7. #7
    ....ehm!! veramente se continui in questo modo non fai altro che far irritare qualche MOD ....

    le uppate si fanno solo dopo un pochino di tempo e non ogni dieci minuti!!
    dai anche il tempo a chi ti vuole aiutare e nel frattempo magari leggiti un pochino il regolamento.

    Inoltre in questo modo non fai altro che indispettire chi vuole aiutarti con la brutta conseguenza che poi non ti aiuta più!!

    www.skorpiograph.com - [ PORTFOLIO ]
    ...se vuoi essere aiutato devi aiutare chi ti aiuta ad aiutarti!!!

  8. #8
    hai ragione

    anche se non sono passati 10 minuti

  9. #9
    penso sia giunto il momento di un'altro ap!

  10. #10
    ecco!
    youuuuu! :mavieni:
    dopo ore ho scoperto di aver commesso una cazzabubbola:
    l'errore stava nello script, più precisamente nel value della opzione che andavo a creare:
    codice:
    <script>
      function aggiornaMese(source,valore){
        giorni=new Array(31,29,31,30,31,30,31,31,30,31,30,31);
        for (i=0;i<=31;i++){
          source.options[i]=null;
        }
        for (i=0;i<giorni[valore];i++){
          source.options[i]=new Option(i+1,i+1 );
        }
    	source.options[0].selected="true";
      }
    </script>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.