在Xpath中具有当前时间函数的IF语句

在Xpath中具有当前时间函数的IF语句,xpath,infopath,Xpath,Infopath,我有一个文本框Infopath,它使用此功能显示当前时间: (现在(),“T”之后的子字符串) 我还有一个名为“位置”的下拉列表,其中包含以下值: 1.波士顿 2.印度 3.伦敦 我想修改此函数,将当前时间设置为始终显示波士顿的当前时间,无论用户来自印度还是伦敦 我认为输入符合以下条件的If语句: 如果位置(下拉列表)=“伦敦”-则使用(现在(),“T”)后的子字符串减去5小时 如果位置(下拉列表)=“印度”-则使用(现在(),“T”)后的子字符串减去11小时 如果位置(下拉列表)=“波士顿”-

我有一个文本框Infopath,它使用此功能显示当前时间:

(现在(),“T”之后的子字符串)

我还有一个名为“位置”的下拉列表,其中包含以下值:

1.波士顿

2.印度

3.伦敦

我想修改此函数,将当前时间设置为始终显示波士顿的当前时间,无论用户来自印度还是伦敦

我认为输入符合以下条件的If语句:

  • 如果位置(下拉列表)=“伦敦”-则使用(现在(),“T”)后的子字符串减去5小时

  • 如果位置(下拉列表)=“印度”-则使用(现在(),“T”)后的子字符串减去11小时

  • 如果位置(下拉列表)=“波士顿”-则使用(现在(),“T”之后的子字符串)


  • 我对Xpath比较陌生,需要帮助。

    最简单的方法是减去小时数,然后用子字符串结束时间

    substring-after(addSeconds(now(), -3600 * 5), "T")
    

    警告:记住当前时间(
    now()
    )是从本地计算机计算出来的。因此,如果伦敦的人打开表单,他们将在伦敦时间到达,然后您的代码将在此基础上减去5个小时,这将使其不正确。

    Infopath仅使用XPath 1.0,XPath 1.0中没有生成当前时间的标准函数。但我使用的函数正在工作。这是错误的计算计算机上列出的当前时间。我只需打开文本框,单击函数图标,然后输入当前时间函数,它就可以工作了。这不是Xpath吗?user1886492,Xpath 1.0没有返回当前时间的函数这是某种扩展函数(或者根本不是Xpath)。