Извлечение даты JavaScript для Acrobat не работает - PullRequest
0 голосов
/ 04 марта 2011

Вот разбивка:
Какой код мне нужен, чтобы извлечь 12, 26 и 48 из поля со значением 101219488926 и затем отобразить его в формате MM/DD/YY?(Таким образом, в этом случае новое значение должно быть 12/26/48)


Вот длинная версия:
Я использую считывающее устройство с магнитной полосой, которое получает информацию отсчитал карту (водительские права) и затем использует эту информацию для автоматического заполнения определенных полей в PDF (имя, фамилия, дата рождения и т. д.).

Все работает отлично, за одним исключением:дата рожденияДаже , что технически работает, но значение в этом формате (при условии, что DOB человека - 26 декабря 1948 года):

10 121948 89 26

Что нужно I : месяц ( 12 ), день ( 26 ) и год(19 48 ) вычеркнуть это длинное число, а затем преобразовать для отображения в формате MM/DD/YY

Вне Acrobat это, кажется, работает просто отлично:

var dob = 101219488926;
trimmonth = dob.substring(2,4);
trimday = dob.substring(10,12);
trimyear = dob.substring(6,8);
dob.value = trimmonth + "/" + trimday + "/" + trimyear;

Есть предложения?

1 Ответ

0 голосов
/ 04 марта 2011

Код, который у вас есть , не должен работать - substring - это функция String, поэтому вам потребуется преобразовать это число в строку, чтобы оно было доступно.Установка dob.value также является подозрительной, поскольку dob является Number, а числа не имеют свойства value.

Конечно, очевидно, что вы не показываете реальный код, который вы пробовали, но что-то вроде этого, вероятно, сработает:

// Appending blank string to type coerce
var dob = 101219488926 + ''; 

// Array.join to glue the numbers together 
// (no reason why you **have** to use this; the original method will work fine too)
dopInput.value = [dob.substring(2,4), dob.substring(10,12), dob.substring(6,8)].join('/');
...