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

Arf*_*een 0 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: '

});
Run Code Online (Sandbox Code Playgroud)

Arfeen

Mol*_*Man 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;
Run Code Online (Sandbox Code Playgroud)

在你的numberrange功能.

你可以在这个例子中看到我在说什么