Fast är osäker på att det hjälper.. bästa vore att göra typ(beroende på vilket språk du skriver det i) att köra en Len() eller .length() för att kontrollera längden...
Aha, men nått tok blir det.
Jag använder koden i en asp.net 2.0 CreateUserWizard för att kolla så att en epostadress angivits.
Det som händer är att sidan postas runt även fast fältet är tomt.
(övriga fält larmas som de ska via javascript)
På serversidan får jag dock respons på att epostadressen är felaktig men borde inte javascriptet också känna av det?
Och det är bara när fältet är tomt som valideringen inte funkar, anger jag en felaktig adress så larmar javascriptet.
Hmm, hittade på felet.
Regular expression validatorn bygger ihop funktionen nedan.
Hur tusan kan de bygga in så att length==0 returnerar true så där rakt av???
function RegularExpressionValidatorEvaluateIsValid(val) {
var value = ValidatorGetValue(val.controltovalidate);
if (ValidatorTrim(value).length == 0)
return true;
var rx = new RegExp(val.validationexpression);
var matches = rx.exec(value);
return (matches != null && value == matches[0]);
}
RegularExpressionValidator skall validera indata, en tom sträng är ju inget att validera.
Använd RequiredFieldValidator och RegularExpressionValidator.