Best function to count number of Drop Down Menu selections

Avatar

Avatar

PsychAssociatio

Avatar

PsychAssociatio

PsychAssociatio

07-07-2015

Hello,

I have a form that has a drop down menu in one section where the user can select various "Topics". The user can add as many of these drop down menus as they like, so it is unknown how many of them there will be on the form.

In another section of the form I have a table that summarizes the drop down menu selections. I need to know is what function I need to use to get the table to count the instances of each of the drop down menu selections.

For example, how many times the user selected "Apples", or "Oranges", or "Pears" from the drop-down menu.

Any help on which function for me to use would be appreciated.

Thank you

Accepted Solutions (0)

Answers (2)

Answers (2)

Avatar

Avatar

PsychAssociatio

Avatar

PsychAssociatio

PsychAssociatio

07-07-2015

Thank you for this information. I think I am just having trouble with my referencing and where I need to include this script on the form, as I have tried putting it in several places and nothing seems to happen.

Here is a link to the form with part of the script: https://drive.google.com/open?id=0BxnuJeLu0uyXWDZvQWRfWm82SHc

(I think once I have one or two items properly scripted I will be able to fix the rest)

Avatar

Avatar

jasotastic81

Avatar

jasotastic81

jasotastic81

07-07-2015

Here's an example solution. I'm not certain how you set up the dropdown to repeat, so I'm presuming that there is a subform that contains the dropdown list each time it is repeated.


var apples = oranges = pears = 0;


var lists = xfa.resolveNodes("sfSomething[*].ddFruit"); //sfSomething is the repeated subform that contains the dropdown list ddFruit


for (i=0; i<lists.length; i++){


  apples = apples + (lists.item(i).rawValue == "apples"); //if the dropdown is "apples" +1 otherwise +0


  oranges = oranges + (lists.item(i).rawValue == "oranges");


  pears = pears + (lists.item(i).rawValue == "pears");


}


tfApples.rawValue = apples;


tfOranges.rawValue = oranges;


tfPears.rawValue = pears;