我正在进行表单验证,我使用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
答案 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
中看到我在说什么