Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515

    js - controllo codice fiscale

    ciao
    ho trovato in questo forum questo js per il controllo del codice fiscale...

    function ControllaCF()
    {
    var cf = document.FrontPage_Form1.codfis.value
    var nome = document.FrontPage_Form1.nome.value;
    var cognome = document.FrontPage_Form1.cognome.value;

    //if (Trim(cf)=='') return '';
    cf = cf.toUpperCase();
    if (cf.length!=16)
    {
    return "La lunghezza del codice fiscale non è corretta: il codice fiscale dovrebbe essere lungo esattamente 16 caratteri.";
    }
    else
    {
    cchar = cf.substring(0, 6);
    if (isNaN(cchar)==false)
    {
    return "I primi sei caratteri sono riferiti al cognome ed il nome e non possono essere numerici.";
    }
    else
    {
    var cod_nominativo = getChars(cognome, false) + getChars(nome,true);
    if (cchar!=cod_nominativo)
    {
    return "I primi sei caratteri sono riferiti al cognome ed il nome e non sono corretti.";
    }
    }

    cchar = cf.substring(6, 8);
    strAnno = document.FrontPage_Form1.anno.value;
    strAnno = strAnno.substring(strAnno.length, strAnno.length-2);

    if (cchar!=strAnno)
    {
    return "Il settimo e l'ottavo carattere sono riferiti all' anno di nascita.";
    }
    cchar = cf.substring(8,9);
    switch (document.FrontPage_Form1.mese.value)
    {
    case '1':
    strMese = 'A';
    break;
    case '2':
    strMese = 'B';
    break;
    case '3':
    strMese = 'C';
    break;
    case '4':
    strMese = 'D';
    break;
    case '5':
    strMese = 'E';
    break;
    case '6':
    strMese = 'H';
    break;
    case '7':
    strMese = 'L';
    break;
    case '8':
    strMese = 'M';
    break;
    case '9':
    strMese = 'P';
    break;
    case '10':
    strMese = 'R';
    break;
    case '11':
    strMese = 'S';
    break;
    case '12':
    strMese = 'T';
    break;
    }
    if (cchar!=strMese)
    {
    return "Il nono carattere si riferisce al mese di nascita.";
    }

    cchar = cf.substring(9,11);
    if (document.FrontPage_Form1.sex[1].checked==true)
    {
    cchar = cchar - 40;
    }

    if (parseFloat(cchar)!=document.FrontPage_Form1.giorn o.value)
    {
    return "Il decimo e l'undicesimo carattere si riferiscono al giorno di nascita.";
    }

    validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    for( i = 0; i < 16; i++ ){
    if( validi.indexOf(cf.charAt(i) ) == -1 )
    return "Il codice fiscale contiene un carattere non valido `" +
    cf.charAt(i) +
    "'.\nI caratteri validi sono le lettere e le cifre.\n";
    }
    set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
    setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
    s = 0;
    for( i = 1; i <= 13; i += 2 )
    s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
    for( i = 0; i <= 14; i += 2 )
    s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
    if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
    return "Il codice fiscale non è corretto:\n"+
    "il codice di controllo non corrisponde.\n";
    return "";
    }
    }
    lo richiamo così
    <input name="codfis" type="text" id="codfis" value="<%=request("cf")%>" size="35" maxlength="16" onchange="ControllaCF()">
    ma lo script mi va in errore.. perche??
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  2. #2

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.