You are here:
< Back

Only activate next button if at least one of several checkboxes is checked 

We have three checkboxeswith different event namesAll their checked event value is set to “yes” and unchecked event value to “no”, but they could all be different from each other. 

We have two more text widgets to represent the next step buttonsNormallythey would be at the same positionbut for this tutorialthey will be next to each other for easier visibility 

The next button starts out hiddenthe other one starts visibleYou could also handle this in a Page change event (Page wide, Page start type), if needed. 

We will start with the Touch events for the first Checkbox. 

Make sure simplified view is turned OFF in the events dialog. 

We need to add an “Execute action batch” type actionNote can be setbut not requiredNext, add 3 “Widget’s value” type Sent fields. 

Select our three Checkboxes. 

Open the actions inside this Execute action batch. 

Inside the batch, we will add two actions. The first one will have a condition for each CheckboxAll these conditions have an ”AND” relationship to each otherso we need to check if each checkbox is OFF (“equals“ “static“ “no“), and, in this casedeactivate the next buttonThis action has to be FINAL. It meansthat if this action ends up executedanything below it will be ignored. 

The second action will not have any conditionsDue to the first one being finalit will be executed when one or more Checkbox is checked 

Now we can set up the enable/disable next button logic however we wantClick the “Actions (0)” button for each of these Action batches. 

For this tutorialwe just used two Show/hide widget action for each batch. (The “Close all action properties” option had been used to make this look more compact on the screenshot.) 

At this pointwe should check if it worksIt will only workwhen we click on the first checkboxso the cases to test are these: 

Open preview => Next is disabled 

Click on the first checkbox => Next button enabled 

Click on it again => Next button disabled 

Click on the second checkbox => Nothing changes 

Click on the first checkbox => Next button enabled 

Click on the first checkbox again => Next button stays enabled (due to the second one being checked) 

Please make sure that it works so far before moving to the next step! 

Now we need this logic to work for all Checkboxes. Go back to the Touch events of the first Checkbox and click on Copy action for the first Execute action batch we made.

Go to the Touch events of the second and third checkbox and click the “Paste all” button. 

Now you can test the whole thing and it should work. 

Tip: You could use a “Content wide” Execute action batch instead of copying it for each checkbox. In that caseif you even need to modify the logicyou don’t have to edit it for each checkboxonly oncefor the content wide batch! 

Recap

First level (Touch actions) – for each checkbox 

Second level 

Third level – two different versions of thisfor each of the second level batches 

Here you can download and import this example content made in this tutorial.