Hi Cat!
I like how you’re currently simulating this interaction by way of creating pre-set text widgets in the Display area. If you’re going for something more realistic, it can jump right into more advanced prototyping (e.g. using JavaScript string functions or potentially using repeaters).
As an example, you can try using the following string function in each checkbox’s OnUnselected Set Text action that targets the “OptionString” label:
[[target.text.substring(0,target.text.indexOf(this.text))]][[target.text.substring(target.text.indexOf(this.text)+this.text.length+1)]]
Here are a couple screenshots showing where you can set this up:
For more context at this stage, check out the following docs on the substring() and indexOf() Javascript methods:
https://www.w3schools.com/jsref/jsref_substring.asp
https://www.w3schools.com/jsref/jsref_indexof.asp
https://www.axure.com/support/reference/math-functions-and-expressions#common_functions
Feel free to refer to this edited RP file as you read along:
SelectWithCheckboxes_Edit.rp (98.1 KB)
The substring expression in the first set of double-brackets takes the value of target.text (i.e. the text on OptionString) and returns a portion of the string between a defined numeric start point and end point. With this part of the function, we want to capture any options that exist in front of the string all the way up to the portion of text that should be left out (via OnUnselected):
[[target.text.substring (0,target.text.indexOf(this.text)) ]]
The substring expression in the second set of double-brackets returns the text from the point where the matching text is positioned all the way to the end of the entire string (+1 to accommodate the extra space between list options on the OptionString widget):
[[target.text.substring (target.text.indexOf(this.text)+this.text.length+1) ]]
Hopefully some of these tips can help get you a step closer!