3 Replies Latest reply on Dec 3, 2012 7:29 AM by try67

    ComboBox1 populates ComboBox2, then populates ComboBox3

    yeungyam Level 1

      I want to use combo box for Date of Birth, as I want to make sure the users will not enter invalid date.

       

      So I used the setItems function and followed the instructions in the thread here http://forums.adobe.com/message/3014009#3014009.

      Everything works well, but the date will not save. If I close the document and re-open it, the date that was set in the 2 combo boxes are not there anymore!

      I don't know what I is wrong.

       

      I have box1 that is month, box2 that is day, and box3 that is year.

       

      Here are my codes (I know there are spaces between the numbers, this is because they have to fit into boxes that were already on the form)

      At Document level JS:

       

        //First you make the values for box1.

       

      myBox1Values = ["", " 0   1", " 0   2", " 0   3", " 0   4", " 0   5", " 0   6", " 0   7", " 0   8", " 0   9", " 1   0", " 1   1", " 1   2"];

       

       

      //Then you populate the values to box1.

       

      this.getField("box1").setItems(myBox1Values);

       

       

       

      // Then you define what has to be shown in box2 when value is selected

       

      var DeptData = { " 0   1": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

       

      " 0   2": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"],

       

      " 0   3": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

       

      " 0   4": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"],

       

      " 0   5": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

       

      " 0   6": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"],

       

      " 0   7": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

       

      " 0   8": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

       

      " 0   9": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"],

       

      " 1   0": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

       

      " 1   1": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"],

       

      " 1   2": [" 0   1"," 0   2"," 0   3"," 0   4"," 0   5"," 0   6"," 0   7"," 0   8"," 0   9"," 1   0"," 1   1"," 1   2"," 1   3"," 1   4"," 1   5"," 1   6"," 1   7"," 1   8"," 1   9"," 2   0"," 2   1"," 2   2"," 2   3"," 2   4"," 2   5"," 2   6"," 2   7"," 2   8"," 2   9"," 3   0"," 3   1"],

      };

       

       

       

      //Finally you set the values of box2

       

      function SetFieldValues(cDeptName)

       

      {

       

      this.getField("box2").setItems(DeptData[cDeptName]);

       

      }

       

       

      In Box1 custom keystroke:

       

      if( event.willCommit )

       

      {

       

      if(event.value == "")

      {

      //if nothing is chosen in DOBmm then DOBdd and DOByyyy will be cleared

       

      this.getField("box2").clearItems();

      this.getField("box3").clearItems();

      }

      else

      {

      SetFieldValues(event.value);

       

      }}

       

       

      Box2 custom format script:

       

        if((this.getField("box1").value == " 0   2") && (this.getField("box2").value == " 2   9"))

      {this.getField("box3").setItems([""," 2   0   1   2", " 2   0   0   8", " 2   0   0   4", " 2   0   0   0", " 1   9   9   6", " 1   9   9   2", " 1   9   8   8", " 1   9   8   4", " 1   9   8   0", " 1   9   7   6", " 1   9   7   2", " 1   9   6   8", " 1   9   6   4", " 1   9   6   0", " 1   9   5   6", " 1   9   5   2", " 1   9   4   8", " 1   9   4   4", " 1   9   4   0", " 1   9   3   6", " 1   9   3   2", " 1   9   2   8", " 1   9   2   4", " 1   9   2   0", " 1   9   1   6", " 1   9   1   2", " 1   9   0   8", " 1   9   0   4", " 1   9   0   0"]);}

       

      else

       

      {this.getField("box3").setItems([""," 2   0   1   2"," 2   0   1   1"," 2   0   1   0"," 2   0   0   9"," 2   0   0   8"," 2   0   0   7"," 2   0   0   6"," 2   0   0   5"," 2   0   0   4"," 2   0   0   3"," 2   0   0   2"," 2   0   0   1"," 2   0   0   0"," 1   9   9   9"," 1   9   9   8"," 1   9   9   7"," 1   9   9   6"," 1   9   9   5"," 1   9   9   4"," 1   9   9   3"," 1   9   9   2"," 1   9   9   1"," 1   9   9   0"," 1   9   8   9"," 1   9   8   8"," 1   9   8   7"," 1   9   8   6"," 1   9   8   5"," 1   9   8   4"," 1   9   8   3"," 1   9   8   2"," 1   9   8   1"," 1   9   8   0"," 1   9   7   9"," 1   9   7   8"," 1   9   7   7"," 1   9   7   6"," 1   9   7   5"," 1   9   7   4"," 1   9   7   3"," 1   9   7   2"," 1   9   7   1"," 1   9   7   0"," 1   9   6   9"," 1   9   6   8"," 1   9   6   7"," 1   9   6   6"," 1   9   6   5"," 1   9   6   4"," 1   9   6   3"," 1   9   6   2"," 1   9   6   1"," 1   9   6   0"," 1   9   5   9"," 1   9   5   8"," 1   9   5   7"," 1   9   5   6"," 1   9   5   5"," 1   9   5   4"," 1   9   5   3"," 1   9   5   2"," 1   9   5   1"," 1   9   5   0"," 1   9   4   9"," 1   9   4   8"," 1   9   4   7"," 1   9   4   6"," 1   9   4   5"," 1   9   4   4"," 1   9   4   3"," 1   9   4   2"," 1   9   4   1"," 1   9   4   0"," 1   9   3   9"," 1   9   3   8"," 1   9   3   7"," 1   9   3   6"," 1   9   3   5"," 1   9   3   4"," 1   9   3   3"," 1   9   3   2"," 1   9   3   1"," 1   9   3   0"," 1   9   2   9"," 1   9   2   8"," 1   9   2   7"," 1   9   2   6"," 1   9   2   5"," 1   9   2   4"," 1   9   2   3"," 1   9   2   2"," 1   9   2   1"," 1   9   2   0"," 1   9   1   9"," 1   9   1   8"," 1   9   1   7"," 1   9   1   6"," 1   9   1   5"," 1   9   1   4"," 1   9   1   3"," 1   9   1   2"," 1   9   1   1"," 1   9   1   0"," 1   9   0   9"," 1   9   0   8"," 1   9   0   7"," 1   9   0   6"," 1   9   0   5"," 1   9   0   4"," 1   9   0   3"," 1   9   0   2"," 1   9   0   1"," 1   9   0   0"]);}

       

      And Box3 is depending on Box1 and Box2.

       

      Like I said, the code works well, everything works as it should, but when I save and close the document the values will disapear upon re-opening the file.

      Appreciate your help.