Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    Confrontare Data Fine con Data Inizio

    Ciao.

    E' possibile su queste due select, controllare che la DATAFINE sia sempre superiore alla DATAINIZIO ?:

    codice:
    <SELECT size="1" NAME="DATAINIZIO" onChange="window.document.location='Form.asp?DATAINIZIO='+this.options[this.selectedIndex].value+'';">
    <option>Selezionare Data inizio</option>
    ...
    </SELECT>
    
    
    <SELECT size="1" NAME="DATAFINE" onChange="window.document.location='Form.asp?DATAFINE='+this.options[this.selectedIndex].value+'';">
    <option>Selezionare Data fine</option>
    ...
    </SELECT>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Si, ma se non lo fosse cosa dovrebbe accadere? e se lo fosse?

    Inoltre mal si accorda con la attuale gestione dell'evento onchange... e manca l'informazione sul contenuto delle varie option

    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 wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Originariamente inviato da br1
    Si, ma se non lo fosse cosa dovrebbe accadere? e se lo fosse?

    Inoltre mal si accorda con la attuale gestione dell'evento onchange... e manca l'informazione sul contenuto delle varie option

    ciao
    Allora il controllo che vorrei eseguire deve fare in modo che la data fine non sia mai inferiore alla data inizio, cioè:

    data inizio = 26/09/2007
    data fine = 30/09/2007

    è OK, mentre:

    data inizio = 30/09/2007
    data fine = 26/09/2007


    non va bene.

    Il contenuto delle option sono una serie di date gg/mm/aaaa prelevate da un db tramite linguaggio lato server; l'evento onchange ricarica la pagina per l'esecuzione di una query.

    E' sufficiente come informazione o dimentico qualcosa?

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Fai l'esempio reale di una option

    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

  5. #5
    Codice PHP:
    <script type="text/JavaScript">

    var 
    inizio'26/09/2007';
    var 
    good'30/09/2007';
    var 
    bad'25/09/2007';
    var 
    date1inizio.split('/');
    var 
    date2good.split('/');
    var 
    date3bad.split('/');
    var 
    dateInizio= new Date(date1[2],date1[1],date1[0]);//
    var good= new Date(date2[2],date2[1],date2[0]);
    var 
    bad= new Date(date3[2],date3[1],date3[0]);
    alert((good-dateInizio));
    alert((bad-dateInizio));

    </script> 

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  6. #6
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Originariamente inviato da br1
    Fai l'esempio reale di una option

    ciao
    OK, ecco:

    Codice PHP:
    <SELECT size="1" NAME="CODICEDATAINIZIO" onChange="window.document.location='FormRiepilogoSitGiornaliera.asp?CODICEDATAFINE=<%=strCODICEDATAFINE%>&ID_GEST=<%=id_gest%>&ID_COD=<%=id_cod%>&CODICEDATAINIZIO='+this.options[this.selectedIndex].value+'';">
    <
    option>Selezionare Data inizio</option>
    <%

    ID_GEST request.querystring("ID_GEST")
    ID_COD request.querystring("ID_COD")
    strCODICEDATAINIZIO request.querystring("CODICEDATAINIZIO")
    strCODICEDATAFINE request.querystring("CODICEDATAFINE")

    strSql "SELECT GIORNATA_LAV FROM SIT_GIORNALIERA GROUP BY GIORNATA_LAV ORDER BY GIORNATA_LAV ASC"
    Set Rs Server.CreateObject("ADODB.Recordset")
    Rs.Open strSqlobjconn

    If Not Rs.EOF Then
    Do while NOT Rs.EOF

    If strCODICEDATAINIZIO "" then %>

              <
    option value"<% = Rs("GIORNATA_LAV") %>"><% = WeekdayName(Weekday(Rs("GIORNATA_LAV")))%>-<%  = Rs("GIORNATA_LAV") %></option>

    <% Else %>

              <
    option value="<% = Rs("GIORNATA_LAV") %>"<%=SELECTED(Rs("GIORNATA_LAV"), strCODICEDATAINIZIO)%>><% = WeekdayName(Weekday(Rs("GIORNATA_LAV")))%>-<%  = Rs("GIORNATA_LAV") %></option>
    <% 

    End If

    Rs.MoveNext
    Loop
    End 
    If

    Rs.Close
    set Rs 
    nothing

    %>

    </
    SELECT

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Guarda l'esempio:
    codice:
    <HTML>
    <HEAD>
    <TITLE> &copy; br1 - 2007 </TITLE>
    <script>
    var old_i = 0;
    var old_f = 0;
    function controlla(obj) {
    	f = obj.form;
    	n = obj.name;
    	new_i = f.inizio.selectedIndex;
    	pippo = f.inizio.options[new_i].value.split("/");
    	data_i = new Date(pippo[2],pippo[1]-1,pippo[0]);
    	new_f = f.fine.selectedIndex;
    	pippo = f.fine.options[new_f].value.split("/");
    	data_f = new Date(pippo[2],pippo[1]-1,pippo[0]);
    	if(data_f<data_i) {
    		alert("Data inizio > data fine");
    		f.inizio.selectedIndex = old_i;
    		f.fine.selectedIndex = old_f;
    	} else {
    		old_i = new_i;
    		old_f = new_f;
    	}
    }
    </script>
    </HEAD>
    <BODY>
    <form>
    <select name="inizio" onchange="controlla(this)">
    <option value="19/07/2007">19/07/2007</option>
    <option value="19/08/2007">19/08/2007</option>
    <option value="19/09/2007">19/09/2007</option>
    </select>
    <select name="fine" onchange="controlla(this)">
    <option value="29/07/2007">29/07/2007</option>
    <option value="29/08/2007">29/08/2007</option>
    <option value="29/09/2007">29/09/2007</option>
    </select>
    </form>
    </BODY>
    </HTML>
    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

  8. #8
    Piccolo appunto:
    Codice PHP:
    var dateInizio= new Date(date1[2],date1[1]-1,date1[0]);//
    var good= new Date(date2[2],date2[1]-1,date2[0]);
    var 
    bad= new Date(date3[2],date3[1]-1,date3[0]); 



    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  9. #9
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da whisher
    Piccolo appunto:
    Codice PHP:
    var dateInizio= new Date(date1[2],date1[1]-1,date1[0]);//
    var good= new Date(date2[2],date2[1]-1,date2[0]);
    var 
    bad= new Date(date3[2],date3[1]-1,date3[0]); 



    Stessa disattenzione anche io

    Comunque dovrebbe funzionare ugualmente
    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

  10. #10
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Credo vada in conflitto con l'evento onchange esistente:

    codice:
    <HTML>
    <HEAD>
    <TITLE> © br1 - 2007 </TITLE>
    <script>
    var old_i = 0;
    var old_f = 0;
    function controlla(obj) {
    	f = obj.form;
    	n = obj.name;
    	new_i = f.inizio.selectedIndex;
    	pippo = f.inizio.options[new_i].value.split("/");
    	data_i = new Date(pippo[2],pippo[1]-1,pippo[0]);
    	new_f = f.fine.selectedIndex;
    	pippo = f.fine.options[new_f].value.split("/");
    	data_f = new Date(pippo[2],pippo[1]-1,pippo[0]);
    	if(data_f<data_i) {
    		alert("Data inizio > data fine");
    		f.inizio.selectedIndex = old_i;
    		f.fine.selectedIndex = old_f;
    	} else {
    		old_i = new_i;
    		old_f = new_f;
    	}
    }
    </script>
    </HEAD>
    <BODY>
    <form>
    <select name="inizio" onchange="controlla(this)" onChange="window.document.location='dates.htm?inizio='+this.options[this.selectedIndex].value+'';">
    <option value="19/07/2007">19/07/2007</option>
    <option value="19/08/2007">19/08/2007</option>
    <option value="19/09/2007">19/09/2007</option>
    </select>
    <select name="fine" onchange="controlla(this)" onChange="window.document.location='dates.htm?fine='+this.options[this.selectedIndex].value+'';">
    <option value="29/07/2007">29/07/2007</option>
    <option value="29/08/2007">29/08/2007</option>
    <option value="29/09/2007">29/09/2007</option>
    </select>
    </form>
    </BODY>
    </HTML>

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.