diff --git a/public/app/plugins/datasource/prometheus/querybuilder/shared/LabelFilterItem.tsx b/public/app/plugins/datasource/prometheus/querybuilder/shared/LabelFilterItem.tsx index b859b8f0bf4..5d15c41e496 100644 --- a/public/app/plugins/datasource/prometheus/querybuilder/shared/LabelFilterItem.tsx +++ b/public/app/plugins/datasource/prometheus/querybuilder/shared/LabelFilterItem.tsx @@ -25,8 +25,8 @@ export function LabelFilterItem({ item, defaultOp, onChange, onDelete, onGetLabe isLoadingLabelValues?: boolean; }>({}); - const isMultiSelect = () => { - return operators.find((op) => op.label === item.op)?.isMultiValue; + const isMultiSelect = (operator = item.op) => { + return operators.find((op) => op.label === operator)?.isMultiValue; }; const getSelectOptionsFromString = (item?: string): string[] => { @@ -82,7 +82,11 @@ export function LabelFilterItem({ item, defaultOp, onChange, onDelete, onGetLabe width="auto" onChange={(change) => { if (change.value != null) { - onChange({ ...item, op: change.value } as any as QueryBuilderLabelFilter); + onChange({ + ...item, + op: change.value, + value: isMultiSelect(change.value) ? item.value : getSelectOptionsFromString(item?.value)[0], + } as any as QueryBuilderLabelFilter); } }} />