diff --git a/rdmo/projects/assets/js/interview/components/main/Search.js b/rdmo/projects/assets/js/interview/components/main/Search.js index 047ffa301..d0bac5289 100644 --- a/rdmo/projects/assets/js/interview/components/main/Search.js +++ b/rdmo/projects/assets/js/interview/components/main/Search.js @@ -8,6 +8,8 @@ import ProjectApi from '../../api/ProjectApi' import ValueApi from '../../api/ValueApi' const Search = ({ attribute, values, setValues, collection = false }) => { + // create a key for the first AsyncSelect, to reset the loaded values when project or snapshot changes + const key = (values.project ? values.project.id : '') + (values.snapshot ? '-all' : '') const handleLoadValues = useDebouncedCallback((search, callback) => { ValueApi.searchValues({ @@ -53,7 +55,7 @@ const Search = ({ attribute, values, setValues, collection = false }) => { return <> { setValues({ ...values, snapshot: !values.snapshot })} + onChange={() => setValues({ + ...values, + value: values.snapshot ? '' : values.value, // reset value + snapshot: !values.snapshot })} /> {gettext('Include snapshots in the search')}