我有一个包含多个字段的表单。其中一个字段有xtype of datefield。此表单的值来自json文件,如下所示:
{"field_1":"text value", "field_2": "2017-08-16T21:00:00.000Z"}
然而,当我这样做时:
form.setValues(json);
仅设置第一个字段。第二个日期字段,定义如下:
{
"xtype":"datefield",
"name": "field_2"
}
由于某种原因未设置。有什么问题,我该如何解决?
答案 0 :(得分:1)
因为JSON本身不支持javascript日期,所以field_2中的值是字符串,而不是javascript日期。
虽然字符串可以表示日期,但有多种格式。在这种情况下,字符串采用datefield无法识别的格式。当datefield尝试设置值时,它会尝试将字符串解析为日期,但由于默认情况下所选格式不是datefield已知的格式,因此该值设置为null。
format
和altFormats
配置包含datefield识别的格式,可以交换/修改以包含您想要支持的日期格式。