如何在表单中的vtype验证的vtypes消息文本中包含字段值?

时间:2011-07-19 07:11:25

标签: forms validation extjs extjs3

我正在进行表单验证,我使用Vtypes来检查数字范围。

一切正常,除了我需要在'numberrangeText'中包含我自己允许的值(field.minValField和field.maxValField)。有没有办法做到这一点?

提前致谢

     Ext.apply(Ext.form.VTypes, {
            numberrange : function(val, field) {
                if(val < field.minValField || val > field.maxValField){
                    console.log(field);
                    return false;
                }
            },
            numberrangeText: 'Value Range Should Be: '

});

Arfeen

1 个答案:

答案 0 :(得分:5)

无法在numberrangeText中使用模板或XTemplates。因为他们(extjs)只是在没有更改的情况下使用此字符串,因为我从行src/widgets/form/TextField.js的文件errors.push(this.vtypeText || vt[this.vtype +'Text']);中找到了该字符串。

但正如您所见,您可以使用field.vtypeText代替。 例如,你可以这样写:

field.vtypeText = 'Value Range Should Be: ' + field.minValField + '-' + field.maxValField;

numberrange函数中。

您可以在this example

中看到我在说什么