Hi jwood, my approach would be :
Use a "text field" and a "Select".
Set the "Select" to allow multiple selection.
On your "Select" control, set the report object ID, and in the Report variable attributes, pass it the value of your text field. something like : $({'variableInReportObject':ca_fdGetTextFieldValue(ca_fd.formId,'yourTextField')})
Create a function in your form who does :
ca_fdFetchSelectData(ca_fd.formId,'yourSelect');
And call it on the onChange or onBlur event of your "text field".
Disclaimer :
Provided code was typed directly on the forum and was not tested, may contains typo.
I expect you to understand that i'll not teach you how to code, there's plenty of JS course on the internet.
Regards,
Pier