Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    42

    controllo campo numerico con decimali

    Ciao a tutti.

    Amici ho questo problemino sicuramente discusso in passato.

    Ho la necessità di controllare un campo input che sia lungo 9 cifre con due decimali.

    In pratica cercavo una routine dinamica in ajax-javascript che verifichi questo campo.

    Potete aiutarmi segnalandomi qualcosa di nuovo e moderno.

    Grazie a tutti a chi mia aiuterà.

    paoluccio

  2. #2
    non ho capito :master:
    il controllo è che sia un numero di 9 cifre + decimali
    o il controllo è altro e l'algoritmo se ne sta nel server?
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    42

    controllo campo numerico

    Buongiorno e grazie della collaborazione.

    Il controllo che intendo consiste in questo:

    un campo input html che accetti solo numeri per un massimo di 7 interi con sue decimali.

    in pratica può accettare ad esempio 1234567.42

    avendo cura di fare istantaneamente il controllo dell'immissione.

    Grazie

    Paolo
    paoluccio

  4. #4
    beh allora ajax c'entra poco...

    un primo limite potresti metterlo a livello di html, mettendo un maxlength="10"
    poi metterei un onblur oppure un onchange che avvii il controlo javascript con le regexp
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    42

    controllo

    scusa non essendo un drago di javascript, potresti dirmi cosa è regexp ??

    Grazie
    paoluccio

  6. #6
    poichè sono al lavoro, solitamente do la dritta poi vi basta fare una ricerca delle parole che passo per capire cosa fare,
    ma per te farò un'eccezione

    http://www.regular-expressions.info/
    http://javascript.html.it/articoli/l...ni-regolari/1/

    Codice PHP:
    function convalida() {
      var 
    pattern = /^\d{1,7}(\.\d{1,2})?$/;
      var 
    campo document.getElementById("campoInput");

      if (
    campo.value.search(pattern) == -1) {
        
    alert("Il valore inserito non è corretto");
        
    campo.focus();
      } else {
        
    alert("Il valore inserito è corretto");
      }

    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    42

    controllo campo

    Grazie

    ho incollato il codice come javascript all'interno del mio html, ma esce sempre "il valore non è corretto".

    ho dato come campo 1234567.11 il valore deve essere numerico e diverso da zero.

    Quindi anche 12.00 è un valore valido.


    Stasera mi studio come scrivere le regole, se nel frattempo mi controlli il codice te ne sarei grato.

    Grazie per l'eccezione.

    Paoluccio.
    paoluccio

  8. #8
    Io penso che si possa fare un controllo attraverso lastIndexOf...
    Tu catturi il vaolre in una variabile...poi controlli che nella variabile sia compresa una virgola...
    Prova così:

    <input type="text" name="text">
    <input type="button" value="Clicca" onClick="funzione()">
    </form>

    <script type="text/javascript">
    <!--
    function funzione() {
    var valore = document.form.text.value;
    if(valore.indexOf(',') > -1) {
    var valore_ = valore.lastIndexOf(',');
    }
    else {
    alert('il valore non è corretto! Inserire una virgola!');
    return false;
    }

    if(valore_ == 2) {
    alert('Il tuo valore è corretto');
    }
    else {
    alert('il tuo valore non è corretto');
    return false;
    }
    }

    </script>
    {}\"$y|\/|0"/{}

  9. #9
    Ehm, mi sono dimenticato...
    Se al posto di virgola usi punto...cambia nel valore lastIndexOf la virgola con il punto...ok?
    Inoltre metti il limite di valori che ti ha consigliato Jarno...
    {}\"$y|\/|0"/{}

  10. #10
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Questo funziona cosi:
    verifica la lunghezza del campo che deve essere di 12 caratteri compreso il punto, inoltre verifica la forma del numero, il primo numero non può essere uno zero e deve avere due decimali dopo il punto.

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Pagina senza titolo</title>
        <script type="text/javascript">
    function convalida() {
      var pattern = /^(([1-9]{1}\d{8})+\.)+(\d{2})+$/;
      var campo = document.getElementById("campoInput");
      if(campo.value.length<12){alert("Campo troppo corto");campo.focus();return false;}
      else if (!campo.value.match(pattern)) {
        alert("Il valore inserito non è corretto");
        campo.focus();
    return false;
      } else {
        alert("Il valore inserito è corretto");
      }
    }
        </script>    
    </head>
    <body>
    <form action="form1" method="post" onsubmit="return convalida()"><table width="290" border="0" cellspacing="0" cellpadding="2">
      <tr>
        <td width="75">Numero</td>
        <td width="144"><input name="campoInput" id="campoInput" type="text" maxlength="12" /></td>
        <td width="59">Es: (123456789.00)</td>
      </tr>
      <tr>
    <td><input name="Invia" type="submit" /></td>
      </tr>
    </table>
    </form>
    </body>
    </html>
    Spero vada bene ciao.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.