[Javascript] File Esterno

eraclio666

Nuovo Utente
8 Mag 2015
28
0
1
barletta
Buongiorno, sto creando un' anagrafica per una web application

ho trovato sul web uno script per il calcolo del codice fiscale e fin quà nessun problema,

il problema sostanziale è che questo script è di quasi 9000 linee di codice, perchè al suo interno vi è una funzione che contiene i codici catastali di tutti i comuni italiani.

Codice:
CFisc.trova_comune=function(pattern_comune)
{
  var codice,comune,ret=[]
  var quoted=pattern_comune.replace(/([\\\.\+\*\?\[\^\]\$\(\)\{\}\=\!\<\>\|\:])/g, "\\$1");
  //var quoted=pattern_comune.replace(/\, "");
  //var re=new RegExp(quoted,'i')
  var re=new RegExp('^'+quoted,'i')

  //document.cf.test.value = re
    
  for(codice in this.codici_catastali)
  {
  
    comune=this.codici_catastali[codice]
    //document.cf.test.value = comune
    
    if(comune.match(re)){
          
    //if(comune.match(re)){     
    //if(comune == 'TRANI (BA)'){

        ret.push([comune,codice])
    document.cf.test.value = ret
        
    } 
  }
    
  return ret
      
}

CFisc.calcola_codice_comune=function(pattern_comune){
  if(pattern_comune.match(/^[A-Z]\d\d\d$/i)) return pattern_comune;
  return this.trova_comune(pattern_comune)[0][1];
 
}


CFisc.codici_catastali={
"A001":"ABANO TERME (PD)",
"A004":"ABBADIA CERRETO (LO)",
"A005":"ABBADIA LARIANA (LC)",
"A006":"ABBADIA SAN SALVATORE (SI)",
"A007":"ABBASANTA (OR)",
"A008":"ABBATEGGIO (PE)",
"A010":"ABBIATEGRASSO (MI)",
"A012":"ABETONE (PT)",
"A013":"ABRIOLA (PZ)",
"A014":"ACATE (RG)",
"A015":"ACCADIA (FG)",
"A016":"ACCEGLIO (CN)",
........


vorrei inserire in un file esterno questo elenco e la funzione richiama l'elenco dal file

come posso fare??? sono un neofita in javascript :(
 
Metti lo script con tutto l'elenco in un file di testo e lo salvi ad esempio con nome comuni.js
poi nella pagina lo richiami con
Codice:
<script src="comuni.js"></script>
 
  • Like
Reactions: eraclio666
Grazie Max per la risposta, ho provato ma mi è venuta in mente un'idea migliore


Nel form html faccio inserire cognome nome data citta di nascita e sesso, poi tramite un bottone faccio il passaggio dei dati a una funzione js per il calcolo del codice fiscale....

Sarebbe possibile fare il passaggio di questi dati a un file esterno del calcolo del codice fiscale ???



Codice:
<script>

function Calcola(){
    nome = document.cf.nome.value;
    cognome = document.cf.cognome.value;
    data = document.cf.dob.value;
    data=data.match(/^\s*(\d+).(\d+).(\d+)/)
    citta = document.cf.citta.value;
    sesso = document.cf.sesso.value;
 
    cf= CFisc.calcola_codice(nome,cognome,sesso,data[1],data[2],data[3],citta)
   document.cf.codice.value=cf;

}
</script>
</head>

<body>
    <form name="cf">

        cognome:<input type="text" name="cognome" >
        <br>
        nome:<input type="text" name="nome" >
        <br>
        data:<input type="text" name="dob">
       <br>
       citta:<input type="text" name="citta" >
        <br>
        sesso:<input type="text" name="sesso">
        <br>

        <input type="button" value="calcola" onclick="Calcola()">

        <input type="text" name="codice">



vorrei che il form fosse nella pagina anagrafica.php e il calcolo del codice fiscale in cf.js, ovviamente dovrei mostrare nel form anagrafica.php il cf calcolato
 
È possibile però bisogna che il file esterno sia sempre richiamato nella pagina altrimenti non vi è communicazione
 
  • Like
Reactions: AC1
Leggendo su internet ho trovato la soluzione

Bastava inserire nell head

<script src=‘nome file.js’></script>


E nel button tramite onclick=nomefunzione


Perché con lo script viene precaricato tutto il file js di conseguenza anche il ritorno del valore del codice fiscale verrà scritto al posto giusto
 
sono riuscito a risolvere quel problema ,


ore nel form inserisco i dari e nel file js calcolo il codice fiscale con restituzione in maniera corretta.

Vorrei capire come posso fare una query nel file js, in pratica, il codice fiscale calcolato lo devo confrontare con i codici fiscali contenuti in un db (mysql) se è già presente blocco l'inserimento dei dati altrimenti faccio continuare l'operazione di inserimento
 

Discussioni simili