Level 1

0% to

Level 2

Tip /

to gain points, level up, and earn exciting badges like the new
Mission!

View all

SOLVED

## populate a drop down list from another drop down list

Level 2

I have 2 dropboxes. Dropbox 1 is a list of names. Dropbox 2 is a list of numbers, each number corresponds to a name in dropbox 1

Dropbox1 - Names

- Bill

- John

- Roberta

Dropbox2 - numbers

- 0000 (Bill's number)

- 1111 (Roberta's number)

- 2222 (John's number)

Is it possible to select a name in Dropbox 1 and have the corresponding number for each name show in dropbox 2?

Thank you in advance for any help and input!

1 Accepted Solution
Level 7

Simple.

Two combos, one has names, one has numbers

In the change event (javascript) for DropDownList1 put:

if (\$.boundItem(xfa.event.newText) == "Bill") {
this.resolveNode("DropDownList2").rawValue = "0000";
}

else if (\$.boundItem(xfa.event.newText) == "John") {
this.resolveNode("DropDownList2").rawValue = "1111";
}

else if (\$.boundItem(xfa.event.newText) == "Roberta") {
this.resolveNode("DropDownList2").rawValue = "2222";
}

NOTE: Unless you make your second combo readonly, you will be able to select a different number regardless of what is selected in the first.

5 Replies
Level 7

Simple.

Two combos, one has names, one has numbers

In the change event (javascript) for DropDownList1 put:

if (\$.boundItem(xfa.event.newText) == "Bill") {
this.resolveNode("DropDownList2").rawValue = "0000";
}

else if (\$.boundItem(xfa.event.newText) == "John") {
this.resolveNode("DropDownList2").rawValue = "1111";
}

else if (\$.boundItem(xfa.event.newText) == "Roberta") {
this.resolveNode("DropDownList2").rawValue = "2222";
}

NOTE: Unless you make your second combo readonly, you will be able to select a different number regardless of what is selected in the first.

Level 2

Nice; I'm going to bookmark this one.

I'm guessing the Case statement would be helpful here too.

Level 7

Sure thing, a switch can be used too.

You could alternatively use this javascript in DropDownList1's change event:

switch(\$.boundItem(xfa.event.newText))

{

case "Bill":

this.resolveNode("DropDownList2").rawValue = "0000";

break;

case "John":

this.resolveNode("DropDownList2").rawValue = "1111";

break;

case "Roberta":

this.resolveNode("DropDownList2").rawValue = "2222";

break;

default:

break;

}

Level 2