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);
}