我需要制作一个包含多个字段的表单,其中包括给我带来麻烦的字段:日期字段。
就其本身而言,它所做的非常好,但它不符合不自动更正的要求,并且只是得到“无效日期”错误。
相关案例是 2 月 30 日,自动更改为 3 月 2 日。
您可以轻松地在官方 API 上重现此示例:https://docs.sencha.com/extjs/6.2.0/classic/Ext.form.field.Date.html
输入02302022,模糊就会变成03/02/2022
我尝试更改验证器以这种方式拒绝我的输入,但它不起作用,因为 Ext.Date.parse 函数也会更正日期!
Ext.create('Ext.form.Panel', {
renderTo: Ext.getBody(),
width: 300,
bodyPadding: 10,
title: 'Dates',
items: [{
xtype: 'datefield',
anchor: '100%',
fieldLabel: 'From',
name: 'from_date',
validator: function (val)
{
// manual
var man = Ext.Date.parse( val , 'mdY' ) != null ;
//formated
var formated = Ext.Date.parse( val , 'm/d/Y' ) != null ;
return manual || formated;
}
}]
});