Поле даты Формы Acrobat заливки с сегодняшней датой, только если поле пусто

Цель состоит в том, чтобы форма Acrobat заполнила поле даты ("MeetingDate") Сегодняшней датой, когда пользователь открывает его. Если пользователь сохраняет форму, как и открывает его несколько дней спустя, старая дата должна все еще быть там, не заменена текущей датой. Если пользователь изменяет дату в поле, та дата должна быть сохранена и не должна быть заменена, когда форма открыта позже.

У меня есть Пользовательский Сценарий Вычисления для поля даты ("MeetingDate"), который делает все это, но с одной проблемой:

if (event.value != "")
then
event.value = util.printd ("m/d/yyyy", new Date())
endif

Это работает хорошо за исключением того, что после ввода сценария, сегодняшняя дата заполняет поле MeetingDate, и значение сохраняется. Это имеет смысл, но я хочу, чтобы поле было автоматически заполнено Сегодняшней датой, когда пользователь открывает форму. Вместо этого если пользователь откроет форму завтра (7/16/2010), то она будет иметь 15.07.2010 в поле, потому что это - дата, я сохранил форму.

Я думаю, что ответ может быть должен ввести сценарий как Документ JavaScript (Усовершенствованный | Процесс Документа | Документ JavaScripts), так как сценарии Документа выполняются, когда форма открыта, но все мои попытки заставляют дату, вводимую пользователем быть перезаписанной, когда форма несколько открытых дни спустя. Спасибо за справку!

5
задан Wells Anderson 16 July 2010 в 03:22
поделиться

1 ответ

Удалите ваш скрипт и замените его следующим document javascript:

var f = this.getField("wells_datefield");
if (!f.value) f.value = util.printd ("m/d/yyyy", new Date());

Сохраните вашу форму и откройте ее, и дата должна появиться прямо там.

При создании документа javascript не забудьте не помещать его внутрь функции. Это можно сделать следующим образом. В меню Acrobat:

  1. Advanced->Document Processing->Document Javascripts...
  2. В появившемся диалоге введите имя сценария (например, "populate_date") и нажмите кнопку Add...
  3. В появившемся диалоге скрипта: УДАЛИТЕ все ("function populate_date(){}") и вставьте скрипт, приведенный выше.
  4. Нажмите ОК, затем Закрыть.
  5. Сохраните форму, закройте ее и откройте снова.
  6. Шага 6 нет! :>
10
ответ дан 18 December 2019 в 16:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: