我使用以下代码验证qform中的传真号码字段
if(objFormEdit.postalCode.defaultValue.length <=5){
objFormEdit.postalCode.validateFormat('xxxxx','numeric', "Postal Code requires either a 5 or 9-digit number in either the format 'xxxxx' or 'xxxxx-xxxx'.");
}
else{
objFormEdit.postalCode.validateFormat('xxxxx-xxxx','numeric', "Postal Code requires either a 5 or 9-digit number in either the format 'xxxxx' or 'xxxxx-xxxx'.");
}
它的工作正常,但是当我输入1234-12345然后将其更改为12341-2345并且不显示任何错误。为什么会这样。在这种情况下我也想要错误信息。
答案 0 :(得分:0)
如下所示在qforms中使用自定义函数,它解决了我的问题。
function __isValidPostalCode()
{
var regx="^[0-9]{5}(?:-[0-9]{4})?$";
var regxObj = new RegExp(regx);
if( regxObj.test(this.value) == false )
{
this.error = "Postal Code requires either a 5 or 9-digit number in either the format 'xxxxx' or 'xxxxx-xxxx'.";
}
}
加载功能
_addValidator("isValidPostalCode", __isValidPostalCode);
将其命名如下
objFormEdit.postalCode.validateValidPostalCode();