繁体   English   中英

根据先前的选择,下拉框在可填充的 PDF 中显示信息时出现问题 - JS

[英]Having issues with dropdown boxes displaying information in a fillable PDF based on previous selection - JS

我对 JS 很陌生,我在 PDF 中获取多个下拉菜单以显示相同的信息时遇到了一些麻烦,基于另一个下拉选项。

因此,假设我的 PDF(1 到 5)中有 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 相同的信息?

谢谢!

您的开关盒在每个案例后都会中断。 你可能应该像俱乐部一样:

 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;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM