无法设置日期字段值

时间:2017-08-13 15:23:49

标签: javascript extjs

我有一个包含多个字段的表单。其中一个字段有xtype of datefield。此表单的值来自json文件,如下所示:

{"field_1":"text value", "field_2": "2017-08-16T21:00:00.000Z"}

然而,当我这样做时:

form.setValues(json);

仅设置第一个字段。第二个日期字段,定义如下:

{
    "xtype":"datefield",
    "name": "field_2"
}

由于某种原因未设置。有什么问题,我该如何解决?

1 个答案:

答案 0 :(得分:1)

因为JSON本身不支持javascript日期,所以field_2中的值是字符串,而不是javascript日期。

虽然字符串可以表示日期,但有多种格式。在这种情况下,字符串采用datefield无法识别的格式。当datefield尝试设置值时,它会尝试将字符串解析为日期,但由于默认情况下所选格式不是datefield已知的格式,因此该值设置为null。

formataltFormats配置包含datefield识别的格式,可以交换/修改以包含您想要支持的日期格式。