diff --git a/superset-frontend/src/components/Select/Select.tsx b/superset-frontend/src/components/Select/Select.tsx index e70527438115d..373ba8213d0db 100644 --- a/superset-frontend/src/components/Select/Select.tsx +++ b/superset-frontend/src/components/Select/Select.tsx @@ -622,7 +622,7 @@ const Select = ({ selectOptions.map(opt => { const isOptObject = typeof opt === 'object'; const label = isOptObject ? opt?.label || opt.value : opt; - const value = (isOptObject && opt.value) || opt; + const value = isOptObject ? opt.value : opt; const { customLabel, ...optProps } = opt; return ( diff --git a/superset-frontend/src/explore/components/controls/SelectControl.jsx b/superset-frontend/src/explore/components/controls/SelectControl.jsx index 43424858aaaa8..4d59808d4c274 100644 --- a/superset-frontend/src/explore/components/controls/SelectControl.jsx +++ b/superset-frontend/src/explore/components/controls/SelectControl.jsx @@ -110,10 +110,12 @@ export default class SelectControl extends React.PureComponent { let onChangeVal = val; if (Array.isArray(val)) { - const values = val.map(v => v?.[valueKey] || v); + const values = val.map(v => + v?.[valueKey] !== undefined ? v[valueKey] : v, + ); onChangeVal = values; } - if (typeof val === 'object' && val?.[valueKey]) { + if (typeof val === 'object' && val?.[valueKey] !== undefined) { onChangeVal = val[valueKey]; } this.props.onChange(onChangeVal, []);