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

    funzione per controllo formato data

    qualcuno sa indicarmi dove posso trovare una funzione javascript che mi controllo il formato di una data da inviare tramite form?io ho già fatto dei controlli in questo modo:

    codice:
    <script language="javascript">
                    function control(fform) {
    	            Ctrl = fform.tipo_scad;
    				if (Ctrl.value == "") {
    				validatePrompt (Ctrl, "Attenzione ! Per inserire una nuova scadenza è necessario specificarne il tipo");
    				return false;
    				}
    	            Ctrl = fform.nome;
    				if (Ctrl.value == "") {
    				validatePrompt (Ctrl, "Attenzione ! Specificare il nome della scadenza che si sta inserendo");
    				return false;
    				}
    				Ctrl = fform.e_data;
    				if (Ctrl.value == "") {
    				validatePrompt (Ctrl, "Attenzione ! Specificare il termine ultimo della scadenza");
    				return false;
    				}
    				Ctrl = fform.w_data;
    				if (Ctrl.value == "") {
    				validatePrompt (Ctrl, "Attenzione ! Specificare quando si desidera essere avvisati della scadenza");
    				return false;
    				}
    				}
    				function validatePrompt (Ctrl, PromptStr) {
    				alert (PromptStr)
    				return false;
    				}
    				// -->
    				</script>
    ma questi mi servono solo per evitare di avere dei campi vuoti.io vorrei un alert nel caso il campo w_data e il campo e_data non abbiano inserita al loro interno una data in formato gg/mm/aaaa.
    è possibile avere una cosa del genere?io sono un aspista e di javascript so proprio poco,quindi se trovassi qualcosa di già pronto,o magari qualcuno che mi dica dove posso cercare...
    grazie infinite

  2. #2
    ...niente?!

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Puoi provare questo....

    codice:
    <script language="JavaScript" type="text/javascript">
    <!--
    function ctlData(data) {
     //---------- Si prova a fare il match su un valore +/- valido
     re= /^([0-3][0-9])\/([0-9]{2})\/([0-9]{4})$/;
     risultato = data.match(re);
     if (risultato == null) {
      return false;
     } else {
      //
    	var chkData = new Date();
    	//-------- risultato è un array che nel 1° posto (indice 0) 
    	//         contiene il valore del parametro data
    	//         nel secondo il giorno, nel terzo il mese e nel quarto l'anno
    	//-------- Anno 	
    	chkData.setFullYear(risultato[3]);
    	//-------- Mese : Meno 1 xche Gennaio è il mese 0 !!!
    	chkData.setMonth(risultato[2] - 1);
    	//-------- Giorno
    	chkData.setDate(risultato[1]);
    	//-------- A questo punto, il js ha risettato la data se ad esempio immetto 
    	//         32/12/2004 mi ritornerà 01/01/2005
    	//-------- Adesso confronto i dati della mia data con i dati dell'array
    	//-------- Giorno
    	if (chkData.getDate() != risultato[1]) {
    	 return false;
    	} // if (chkData.getDate() != risultato[1]) 
    	//-------- Mese
    	if (chkData.getMonth() != risultato[2] - 1) {
    	 return false;
    	}	// if (chkData.getMonth() != risultato[2] - 1) 
    	//-------- Anno
    	if (chkData.getFullYear() != risultato[3]) {
    	 return false;
    	}	// if (chkData.getFullYear() != risultato[3])
    	//-------- A questo punto nessun errore
      return true;
     } //  if (risultato == null) 
    }
    alert(ctlData('31/12/2004'));
    alert(ctlData('16/02/2005'));
    //
    alert(ctlData('33/11/2004'));
    alert(ctlData('01/13/2004'));
    alert(ctlData('3/2/2004'));
    alert(ctlData('03/02/04'));
    
    
    //-->
    </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.