Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776

    [JQUERY] Formattare un campo input secondo l'esigenza, formato 12/34567890/12

    Ciao a tutti,


    avrei bisogno che in un campo input un testo si formattasse secondo determinate regole:
    - tutto quello che non e' numero che venga eliminato
    - non ci devono essere piu' di 12 numeri
    - vengano inserite due barre '/' dopo il carattere 2 e il carattere 10.
    Penso che il problema possa essere l'espressione regolare, ecco il codice:
    codice:
    
    <!DOCTYPE html>
    <html>
    <head>
    <script SRC="https://code.jquery.com/jquery-3.3.1.min.js"></script>
    </head>
    <body>
    <input id="segsocial" name="segsocial" type="text" class="form-control "  placeholder="">
    
    
    <script>
    $("#segsocial").on("keyup",setSegSocial);
    function setSegSocial(){
        var segsoc=$(this).val();
        segsoc=segsoc.replace(/[^0-9]/, '');
        if(segsoc.length>12){
            segsoc=segsoc.substr(0,12);
        }
        if(segsoc.length>10){
           segsoc=segsoc.slice(0,2)+"/" +segsoc.slice(2,10)+"/"+segsoc.slice(10);
        }else if(segsoc.length>1){
            segsoc=segsoc.slice(0,2)+"/" +segsoc.slice(2)
        }
        $(this).val(segsoc);
    }
    </script>
    
    
    </body>
    </html>

    Grazie,
    Roberto

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776
    Risolto:
    mancava la g nella regex:
    codice:
    function setSegSocial(){
        var segsoc=$(this).val();
        segsoc=segsoc.replace(/[^0-9]/g, '');
        if(segsoc.length>12){
            segsoc=segsoc.substr(0,12);
        }
        if(segsoc.length>10){
           segsoc=segsoc.slice(0,2)+"/" +segsoc.slice(2,10)+"/"+segsoc.slice(10);
        }else if(segsoc.length>2){
            segsoc=segsoc.slice(0,2)+"/" +segsoc.slice(2)
        }
        $(this).val(segsoc);
    }

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 © 2024 vBulletin Solutions, Inc. All rights reserved.