Как скрыть параметр из переключателя

#javascript #radio-button #adobe #hidden #option

#javascript #переключатель #adobe #скрытый #опция

Вопрос:

Я хочу создать форму с помощью Adobe Acrobat. У меня есть флажок (с именем CheckBox) и переключатели (имя группы: Group1; имя параметров Opt1 Opt2 Opt3).

С помощью этого кода в действиях флажка (запустите скрипт JavaScript):

 var nDisplay = event.target.isBoxChecked (0)? display.visible: display.hidden;
this.getField ("Group1"). display = nDisplay;
 

Мне удается скрыть группу (= все параметры). Но я хотел бы скрыть только один вариант (например, Opt3).
Как мне изменить свой код для достижения этого результата?
Спасибо за вашу помощь 🙂

Ответ №1:

Я вижу, что в вашем примере вы добавляете имя группы в функцию getfield : this.getField ("Group1") . Это означает, что вы скрываете всю группу. Чтобы скрыть один параметр, вы должны вместо этого добавить имя этого конкретного параметра в функцию getfield this.getField ("Opt3")

Итак, ваш код должен выглядеть следующим образом:

 var nDisplay = event.target.isBoxChecked (0)? display.visible: display.hidden;
this.getField ("Opt3"). display = nDisplay;
 

Комментарии:

1. Я уже пробовал эту идею раньше: замените «Group1» на «Opt3». Но это не имеет значения, когда я выполняю действие с моим флажком. Я также попытался использовать «Group2.Opt3», думая, что мне нужно определить группу опции для выбора.

2. Вы пробовали перейти display.hidden на display.none ?

3. Я получил исходный код здесь , но я только что протестировал, заменив «display.hidden» на «display.none»: больше никаких действий с флажком

4. @IFE Вы имеете в виду больше никаких действий, когда у вас есть this.getField ("Opt3") или this.getField ("Group1") ?

5. Я хочу, чтобы при установке флажка опция Opt3 была видимой или скрытой. Подводя итог моим тестам и вашим предложениям (по сравнению с моим исходным кодом): — замените «Group2» на «Opt3»: больше ничего не работает — замените «display.hidden» на «display.none» (с помощью this.getField («Group2») или this.getField («Opt3»))): больше ничего не работает, я думаю, что нужно найти правильную номенклатуру для обозначения предложения Opt3, но я недостаточно разбираюсь в javascript.

Ответ №2:

Благодаря исследованиям и тестированию я наконец нашел решение. Проблема была с именем опции. У меня была эта интуиция.

В Adobe Acrobat (форма), когда вы создаете переключатели, они являются частью группы (пример «Group1»), и каждая новая кнопка будет называться «Opt1» «Opt2» … Чтобы провести параллель с другими языками, группа на самом деле является «списком». Таким образом, имя опции «Opt1» — это не «Opt1», а 1-й элемент «списка» (= «Group1»): Group1.0 И с этим он выиграл.

Я беру свой исходный код, который скрывает всю группу («Group1»):

 var nDisplay = event.target.isBoxChecked (0)? display.visible: display.hidden;
this.getField ("Group1"). display = nDisplay;
 

Если я хочу выполнить действие над 1-м элементом списка (= «Opt1»), код станет:

 var nDisplay = event.target.isBoxChecked (0)? display.visible: display.hidden;
this.getField ("Group1.0"). display = nDisplay;
 

(1-й элемент = 0; 2-й элемент = 1 …)

Спасибо Стивену за то, что нашел время помочь мне 🙂 И я надеюсь, что это поможет другим людям.