获取日期/时间类型的编辑框的值

时间:2014-11-25 09:45:59

标签: validation xpages ssjs

我尝试获取Date / Time类型的编辑框的值。如果我用

进行测试
getComponent("dateField").value 

 getComponent("dateField").getSubmittedValue();

并将输出打印到控制台。它总是返回" null"如果该字段为空或 该字段不包含valide日期。因此,我在invalide输入和空输入之间不同。

如果字段为空,有没有办法获取信息?

1 个答案:

答案 0 :(得分:2)

这取决于您正在测试的刷新阶段。

getValue()将始终返回空白,因为只有可以转换为基础数据类型的内容才会传递给它。即使您禁用验证,转换器检查仍会运行,因为如果您尝试将“这不是日期”放入日期/时间,则会发生严重错误。

如果您正在检入“调用应用程序”或“渲染响应”阶段,则

getSubmittedValue()将始终为null。这是因为在Update Model Values阶段,submittedValue属性被传递给value属性,submittedValue属性被置为空。

如果您正在检入验证器,则尚未根据验证规则(验证)检查用户输入的文本值,或者可以将其转换为正确的数据类型(转换),因此{{1}将返回上次存储的值,getValue()将给出字符串值(例如“这不是日期”)。

所以答案是你应该能够在验证器中判断该字段是否为空,但请记住,如果您还有一个必需的验证器,则自定义验证器才会运行。