Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Check numero con Virgola

    Ho un controllo form in javascript che controlla se un valore è un numero, ma purtroppo riesco a farlo solo per un numero intero... come faccio a controllare se è un numero anche con la virgola?
    Questo è il mio codice, qualcuno saprebbe aiutarmi?:


    codice:
    function controllo()
    
    var posizione=document.getElementById("totale_voce").value
    	if(isNaN(posizione))
    	
    	{
    		
    		alert("Attenzione!!! Il totale non è espresso con un numero.");
    		return false;
    	
    	}
    
    	document.getElementById("form_modifica").submit();
    }
    grazie

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    I numeri decimali in javascript usano come separatore il punto... se non pretendi che l'utente la usi trasforma la virgola in punto prima di fare il controllo:

    var posizione=document.getElementById("totale_voce").v alue.replace(",","\.")

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    grandissimo, approfitto ancora un attimo della tua gentilezza... se volessi anche che mi leggesse il punto come virgola (attualmente se metto il punto non legge nulla, 14.3 per lui è 143..).
    ho provato aggiungendo value.replace(",","\.",".","\.") ma non va...

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    il punto (.) è gia considerato da javascript come separatore decimale quindi non devi fare nessuna conversione...

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Mai visto il metodo replace() con quattro parametri... mi pare un'invenzione un tantino fantasiosa e comunque non hai bisogno di cambiare il punto in punto

    Prova e medita: (ricorda che false vuol dire che e' numerico)

    alert(isNaN('1234.56'))
    alert(isNaN('1234,56'))
    alert(isNaN('1234.56'.replace(',','.')))
    alert(isNaN('1234,56'.replace(',','.')))

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.