Visualizzazione dei risultati da 1 a 4 su 4

Discussione: form data di nascita

  1. #1
    Utente di HTML.it L'avatar di satoshi
    Registrato dal
    May 2002
    Messaggi
    217

    form data di nascita

    salve ho 3 combo box nel primo ho la lista degli anni nel secondo la lista dei mesi e nell' ultimo la lista dei giorni

    vorrei creare uno sript java che quando nel secondo box seleziono il mese di conseguenza nell ultimo box mi da i giorni effettivi del mese

    es seleziono gennaio i giorni che ho nel 3 box = 31
    se seleziono febbraio i giorni 28
    ecc....

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
    <head>
    <script>
    function giorni() {
    	a = document.mioForm.anno
    	aa = a.options[a.selectedIndex].value
    	m = document.mioForm.mese
    	mm = m.options[m.selectedIndex].value
    	g = document.mioForm.giorno
    	gg = 1
    
    	for (i = g.length; i > 0; i--) {
    		g.options[i-1] = null
    	}
    
    	d = new Date(aa, mm, gg)
    	while (d.getMonth()==mm) {
    		g.options[gg-1] = new Option((gg))
    		d = new Date(aa, mm, ++gg)
    	}
    	g.selectedIndex = 0
    }
    </script>
    </head>
    
    <body>
    <form name="mioForm" action="">
    Anno:
    <select name="anno" onChange="giorni()">
      <option value="2000">2000
      <option value="2001">2001
      <option value="2002">2002
      <option value="2003">2003
      <option value="2004">2004
      <option value="2005">2005
    </select>
    
    
    
    Mese:
    <select name="mese" onChange="giorni()">
      <option value="0">Gennaio
      <option value="1">Febbraio
      <option value="2">Marzo
      <option value="3">Aprile
      <option value="4">Maggio
      <option value="5">Giugno
      <option value="6">Luglio
      <option value="7">Agosto
      <option value="8">Settembre
      <option value="9">Ottobre
      <option value="10">Novembre
      <option value="11">Dicembre
    </select>
    
    
    
    
    Giorno:
    <select name="giorno">
      <option value=1>1
    </select>
    </form>
    <script type="text/javascript">
    giorni()
    </script>
    </body>
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di satoshi
    Registrato dal
    May 2002
    Messaggi
    217
    va bene solo che ho due piccoli problemi interagisco il codice con asp per ottenere delle automatizazioni


    1) nella lista dei mesi quando seleziono gennaio mida 28 gg
    seleziono febbraio mi da 31 gg

    mi si sposta tutto di un mese


    2) metto come primo option uno vuoto

    <option></option>

    e quando vado ad inserire il tutto nel box dei giorni non funge mi visualizza 1



    <script>
    function giorni() {
    a = document.mioForm.anno
    aa = a.options[a.selectedIndex].value
    m = document.mioForm.mese
    mm = m.options[m.selectedIndex].value
    g = document.mioForm.giorno
    gg = 1

    for (i = g.length; i > 1; i--) {
    g.options[i-1] = null
    }

    d = new Date(aa, mm, gg)
    while (d.getMonth()==mm) {
    g.options[gg-1] = new Option((gg))
    d = new Date(aa, mm, ++gg)
    }
    g.selectedIndex = 0
    }
    </script>
    </head>

    <body>
    <form name="mioForm" action="">
    Anno:
    <select name="anno" onChange="giorni()">
    <option></option>
    <%
    anno = DatePart("yyyy",Date())
    For f = anno-80 To anno
    %>

    <option value="<%=f%>"><%=f%></option>

    <%
    f = f
    Next
    %>
    </select>



    Mese:
    <select name="mese" onChange="giorni()">
    <option></option>
    <%
    For k = 1 to 12
    %>

    <option value="<%= k %>"><%= monthname(k)%></option>

    <%
    Next
    %>

    </select>





    Giorno:
    <select name="giorno">
    <option value=1>1
    </select>
    </form>
    <script type="text/javascript">
    giorni()
    </script>
    </body>

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    In javascript i mesi sono numerati da 0 a 11, in asp da 1 a 12, quindi:

    <option value="<%= k-1 %>"><%= monthname(k)%></option>

    se pero' hai necessita che venga inviato con il form il mese da 1 a 12 ti conviene modificare lo script:

    mm = m.options[m.selectedIndex].value -1


    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.