Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    203

    gestire zeri davanti a un numero

    Ciao a tutti,
    in un form devo far inserire in una text il numero di conto corrente.

    come si sa il numero di conto corrente è formato da 12 numeri e generalmente è in questo formato es. 000000012345

    io vorrei fare che quando la text perde il focus e uno ha inserito ad esempio 12345 alla perdita del focus mi visualizzi nella text appunto 000000012345.

    come faccio a gestire questa cosa in javascript? in asp so come fare ma non in js...

    Grazie

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Prova questo (IE)
    Inserisci un numero e poi clicca sul pulsante.

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <script language="JavaScript" type="text/javascript">
    <!--
    function completeNumField(fieldName,digitInt,digitDec) {
     fieldName.value = fieldName.value.replace(',','.');
     //----------- Sortie s'il ne s'agit pas d'une donnée numérique
     if (isNaN(fieldName.value)) {return;}
     //----------- Si la longueur est atteinte on sort
     if (fieldName.value.length >= (digitInt+digitDec)) {return;}
     //----------- Recherche de . ou ,
     var re = /(\.)/i;
     found  = fieldName.value.search(re);
     if (found == -1) {
      re    = /(,)/i;
      found = fieldName.value.search(re);
     } // if (found == -1)
     if (found != -1) {
      //-------------- Nombre avec virgule
      var integerPart = fieldName.value.substr(0,found);
    	var decimalPart = fieldName.value.substr(found+1,fieldName.value.length - found - 1);
    	//----- Partie décimale
    	if (decimalPart.length > digitDec) {
    	 decimalPart  = decimalPart.substr(0,digitDec -1);
    	} else {
    	 for (i=decimalPart.length;i<digitDec;i++) {
    	  decimalPart = decimalPart + '0';
    	 } // if (decimalPart.length > digitDec)
    	} // if (decimalPart.length > digitDec)
    	//----- Partie entière
    	for (i=integerPart.length;i<digitInt;i++) {
    	 integerPart = '0' + integerPart;
    	} // for (i=integerPart.length;i<digitInt;i++)
    	fieldName.value = integerPart + decimalPart;
    	return;
     } else {
    	//----- Partie décimale
    	for (i=0;i<digitDec;i++) {
    	 fieldName.value = fieldName.value + '0';
    	} // if (decimalPart.length > digitDec)
    	//----- Partie entière
    	for (i=fieldName.value.length;i<(digitInt+digitDec);i++) {
    	 fieldName.value = '0' + fieldName.value;
    	} // for (i=integerPart.length;i<digitInt;i++)
    	return;
     } // if (found != -1)
     alert(integerPart + " " + decimalPart);
     return;
    // fieldName.value = "";
    }
    
    //-->
    </script>
    
    <input type="text" id="text1">
    <input type="button" value="clicca" onclick="completeNumField(document.getElementById('text1'),8,0)">
    </body>
    </html>

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    203
    mi da degli errori,
    nessun altro mi sa aiutare?

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quali errori ti dà ?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    203
    allora ho cancatenato il numere che inserisce a 12 zeri

    cc="12345";

    test1="000000000000" + cc;

    vorrei fare tipo la right di 12 della variabile test1

    grazie...

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    cc = 12345; // puo` essere valore numerico o stringa, la cosa non cambia
    cc = "000000000000" + cc;
    cc = cc.substr(cc.length - 12);
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.