基于以前的选择,下拉框出现在可填充PDF中显示信息的问题

问题描述 投票:0回答:1

我对JS还是很陌生,根据另一个下拉选项,在PDF中获取多个下拉列表以显示相同信息时遇到了一些麻烦。

所以可以说,我的PDF中有5个下拉菜单(1至5)。下拉菜单1将填充下拉菜单2。根据下拉菜单2的选择,下拉菜单的3至5应该显示相同的信息。

示例:

下拉菜单2具有3个选项(A,B,C)。如果选择了选项A,则下拉菜单3-5应分别显示1,2,3。如果选择了B,则每个都应显示4,5,6。如果选择了C,则每个都应显示7,8,9。

我能上班的只有下拉菜单3.其他的都显示为空白。

代码如下:

var dropdown = this.getField("Dropdown2");
var crewtype = 0;
for (i=0; i<dropdown.numItems; i++) {
    if(dropdown.getItemAt(i, false) == event.value) {
        crewtype = dropdown.getItemAt(i, true);
    }
}

switch (crewtype) {
    case "A": this.getField("Dropdown3").setItems(
            ["1", "2", "3"]);
        break;
    case "A": this.getField("Dropdown4").setItems(
            ["1", "2", "3"]);
        break;
    case "A": this.getField("Dropdown5").setItems(
            ["1", "2", "3"]);
        break;
    case "B": this.getField("Dropdown3").setItems(
            ["4", "5", "6"]);
        break;
    case "B": this.getField("Dropdown4").setItems(
            ["4", "5", "6"]);
        break;
    case "B": this.getField("Dropdown5").setItems(
            ["4", "5", "6"]);
        break;
    case "C": this.getField("Dropdown3").setItems(
            ["7", "8", "9"]);
        break;
    case "C": this.getField("Dropdown4").setItems(
            ["7", "8", "9"]);
        break;
    case "C": this.getField("Dropdown5").setItems(
            ["7", "8", "9"]);
        break;
    default: this.getField("Dropdown3").setItems(
            ["Select Code:"]);
        break;
}

对不起,代码很乱,我的代码和绿色差不多,可以得到绿色的代码。

如何获得下拉菜单4和5以显示与下拉菜单3相同的信息?

谢谢!

javascript pdf
1个回答
0
投票

您的开关盒在每种情况下都会损坏。您可能会喜欢这样:

 switch (crewtype) {
  case "A":
    this.getField("Dropdown3").setItems(["1", "2", "3"]);
    this.getField("Dropdown4").setItems(["1", "2", "3"]);
    this.getField("Dropdown5").setItems(["1", "2", "3"]);
    break;
  case "B":
    this.getField("Dropdown3").setItems(["4", "5", "6"]);
    this.getField("Dropdown4").setItems(["4", "5", "6"]);
    this.getField("Dropdown5").setItems(["4", "5", "6"]);
    break;
  case "C":
    this.getField("Dropdown3").setItems(["7", "8", "9"]);
    this.getField("Dropdown4").setItems(["7", "8", "9"]);
    this.getField("Dropdown5").setItems(["7", "8", "9"]);
    break;
  default:
    this.getField("Dropdown3").setItems(["Select Code:"]);
    break;
}
© www.soinside.com 2019 - 2024. All rights reserved.