diff --git a/source/components/form/select.mjs b/source/components/form/select.mjs
index ec7812acdbd5cd835e1eb483f51a943e04257b7b..5168b21e5fc6e5c06d8731aa90361b3dfb5d419a 100644
--- a/source/components/form/select.mjs
+++ b/source/components/form/select.mjs
@@ -2046,14 +2046,17 @@ function convertSelectionToValue(selection) {
 	if (isArray(selection)) {
 		for (const obj of selection) {
 			const v = obj?.["value"];
-			if (v !== undefined) value.push(v);
+			if (v !== undefined) value.push(`${v}`);
 		}
 	}
 
 	if (value.length === 0) {
 		return "";
 	} else if (value.length === 1) {
-		return value.pop();
+		const v= value.pop();
+		if (v === undefined) return "";
+		if (v === null) return "";
+		return `${v}`;
 	}
 
 	return value.join(",");