【发布时间】:2012-09-08 04:22:24
【问题描述】:
我在获取要填充到交互式 PDF 表单中的字段时遇到了一些困难。我正在使用 javascript 从表单中已经存在的 2 个日期字段(DateToday 和 ClientDOB)计算客户的当前年龄,我需要它来填充“ClientAge”字段。 DateToday 字段会在表单打开时自动填充。我希望在用户选择 ClientDOB 后填充 ClientAge 字段。
这就是我想让它做的事情。我想应该很简单。
DateToday - ClientDOB = ClientAge
这是我的代码:
var DateToday_ = Date2Num(DateToday.formattedValue, "MM/DD/YYYY")
var ClientDOB_ = Date2Num(ClientDOB.formattedValue, "MM/DD/YYYY")
var diff = DateToday_ - ClientDOB_
ClientAge.value = Floor(diff / 365.25)
我不确定为什么在选择 ClientDOB 后不会填充 ClientAge 字段。任何回复都会有所帮助。谢谢。
【问题讨论】:
-
由于您几乎没有代码显示:很难真正分析它。如果它没有输出,则表明该值未设置或未正确设置。变量的值除了输出还能查看吗?
-
这里是你需要完成的纯 JS。
now = new Date().getTime(); bday = new Date(YY,MM,DD).getTime(); diff = Math.floor((now-bday)/1000/60/60/24/365.25);用 2 或 4 位年份替换YY。MM带有月份 减 1 和DD带有日期。 -
非常感谢您回复我。对此,我真的非常感激。您看到“几乎没有代码”的原因是因为这几乎不需要任何代码。我正在尝试做的是从交互式表单中的 2 个字段进行简单计算。我有 2 个日期:DateToday 和 ClientDOB。我试图减去这两个字段以获得年龄(ClientAge)。 DateToday 字段在打开文档并选择 ClientDOB 字段时填充。选择 ClientDOB 后,应根据 (DateToday-ClientDOB) 填充 ClientAge 字段。
-
我对基于 adobe 的 JS 及其库一无所知,所以看看你的代码:它可能完全错误,我不知道。由于 ClientAge 不会填充:尝试将 ClientAge 直接设置为任何内容。如果这不起作用:您的语法错误。如果它确实有效:您的 Date2Num 函数可能是错误的。
-
非常感谢您的回复!我从没想过 Adobe 可能有不同的库。我想我们都知道假设的作用......我必须调查一下,看看是否可能是这种情况。再次感谢您的帮助。
标签: javascript forms pdf adobe