killerkats123 Ответов: 1

PDF javascript добавление определенного значения в другое текстовое поле


Всем привет,
Я работаю в формате PDF и искал повсюду этот код, но официально я в тупике.

У меня есть два текстовых поля: когда я ввожу значение в первое, мне нужно, чтобы второе поле отражало это значение + 5.

Например:
Ящик первый = 3:00
Коробка два автоматически станет 3:05

Что я уже пробовал:

​var firstValue = this.getField("valueOne"). ValueAsString;
var secondValue = this.getField("5");
if (firstValue=="3:00" || secondValue=="3:05") event.value = "5";
else event.value = Number(firstValue) + Number(secondValue);

1 Ответов

Рейтинг:
2

Patrice T

Во-первых, Java и Javascript-это два разных зверя, это один из них, но не оба.
Насколько я вижу, этот вопрос не связан с PDF.

Вы назвали поле "5" ?

var secondValue = this.getField("5");

Это довольно необычно.

Разработка чего-то из вашего кода-это скорее предположение, чем что-либо еще.
​var firstValue = "3:00";
var secondValue = "3:05";
if (firstValue=="3:00" || secondValue=="3:15") event.value = "5";
else event.value = Number(firstValue) + Number(secondValue);

Таким образом, нам не нужно гадать, что делает код.

Похоже, что вы имеете дело со значениями времени, вы не можете ожидать, что преобразование в число будет обработано правильно.

И ваш стиль кодирования плох, он экономит 2 клавиши ввода ввода за счет читабельности, это лучше.
​var firstValue = this.getField("valueOne"). ValueAsString;
var secondValue = this.getField("5");
if (firstValue=="3:00" || secondValue=="3:05")
    event.value = "5";
else
    event.value = Number(firstValue) + Number(secondValue);


Задавать вопросы-это навык[^]
Некоторые рекомендации по размещению вопросов на форумах[^]

[Обновление]
Цитата:
Как это очевидно, совершенно очевидно, я не профессиональный верстальщик. Я понятия не имею, что делаю - отсюда и "плохой код", и незнание разницы между Java и JavaScript.

Мы не можем угадать, что не сказано.
Совет: изучайте язык и программирование правильно с помощью некоторых учебных пособий, а не начиная с личного проекта.
То, что вы делаете, похоже на попытку получить водительские права, выиграв Гран-При Формулы-1, это не работает так.
Цитата:
Я получил синтаксическую ошибку для незаконного символа в строке 2.

Вы забыли сказать нам, что у вас было такое же сообщение об ошибке в коде от вопроса?
Эмпирическое правило: чтобы сделать то же самое на 2 полях, используйте один и тот же синтаксис.
Попробуй:
​var firstValue = this.getField("Text23"). ValueAsString;  // use no space before ValueAsString
var secondValue = this.getField("Text24").ValueAsString;  // use same syntax for same operation

Цитата:
Было бы проще иметь установленное значение 5 в другой коробке? Поэтому я ввожу значение в Text23 + другое поле с заданным значением 5 = результат появляется в Text24.

Совет: объясните смысл того, что вы делаете.
I have a form to do this ...
I read value from 2 fields, their meaning is ...
I do this operation which mean ... , the result means ...
I store result in ... field ...


killerkats123

Как это очевидно, совершенно очевидно, я не профессиональный верстальщик. Я понятия не имею, что делаю - отсюда и "плохой код", и незнание разницы между Java и JavaScript. Я рыскал по интернету в поисках этого результата, но безрезультатно, отсюда и мой пост на этом форуме. Этот код действительно необходим для PDF.

Первое поле, в которое вводится значение, называется "Text23", а поле результата, в которое я хотел бы добавить 5, называется "Text24". Основываясь на вашем предложении выше, я отредактировал и попробовал приведенный ниже код, который все еще не работает. Я получил синтаксическую ошибку для незаконного символа в строке 2.

​var firstValue = this.getField("Text23"). ValueAsString;
var secondValue = this.getField("Text24");
if (firstValue=="3:00" || secondValue=="3:05")
event.value = "5";
еще
event.value = Number(firstValue) + Number(secondValue);

Было бы проще иметь установленное значение 5 в другой коробке? Поэтому я ввожу значение в Text23 + другое поле с заданным значением 5 = результат появляется в Text24.