Devo controllare un importo in un campo testo di un form.

Ora vorrei che sia solo ammessi importi con i decimali e che il carattere separatore sia il . o la ,

Ho creato questo funzione

Codice PHP:
if (document.getElementById('uplPaypal2').checked){

price document.getElementById('uplPrice').value;           

if (!(
price.match(/^\d+(\.\d{2})?$/))) { 
   
alert('Inserire un importo con decimali');                               
 return 
false;                           
}                         

Con questa funzione ho i seguente risultati:
- importi con solo lettere (segnalo errore)
- importi lettere miste a numeri (segnalo errore)
- importi con numeri senza carattere separatore (non segnalo errore)
- importi con numeri con carattere separatore , (non segnalo errore)

Grazie