Salve a tutti.

Cosa sbaglio in questa Regular Expression?
Perchè i campi del form mi accettano solo numeri interi e non decimali?

Proprio non capisco... :master:

codice:
function validateNumber(fieldObj, customAlert, sep, dec)
{
  // Solo numeri interi
  if (sep.length != 1) re = new RegExp("^\\s*(\\d+)\\s*$", "");
  
  // Numeri interi e float (separatore decimale definito da 'sep')
  else
    {
      if (dec > 0) re = new RegExp("^\\s*(\\d*\\" + sep + "\\d{" + dec + "})\\s*$", "");
      else re = new RegExp("^\\s*(\\d+(\\" + sep + "\\d+)?|\\" + sep + "\\d+)\\s*$", "");
    }
 
  var rt = fieldObj.value.match(re);
  if (!rt)
    {
      if (customAlert.length > 0) alert(customAlert);
      else alert("Il campo '" + fieldObj.name + "' deve contenere un numero!");
 
      fieldObj.value = "";
      fieldObj.focus();
      return(false);
    }
 
  fieldObj.value = rt[1];
  return(true);
}