diff --git a/packages/bootstrap-4/src/SelectWidget/SelectWidget.tsx b/packages/bootstrap-4/src/SelectWidget/SelectWidget.tsx
index 90b2d892dc..cd96122fda 100644
--- a/packages/bootstrap-4/src/SelectWidget/SelectWidget.tsx
+++ b/packages/bootstrap-4/src/SelectWidget/SelectWidget.tsx
@@ -41,7 +41,10 @@ const SelectWidget = ({
return (
- 0 ? "text-danger" : ""}>
+ 0 ? "text-danger" : ""}
+ htmlFor={id}
+ >
{label || schema.title}
{(label || schema.title) && required ? "*" : null}
@@ -52,8 +55,7 @@ const SelectWidget = ({
value={typeof value === "undefined" ? emptyValue : value}
required={required}
multiple={multiple}
- disabled={disabled}
- readOnly={readonly}
+ disabled={disabled || readonly}
autoFocus={autofocus}
className={rawErrors.length > 0 ? "is-invalid" : ""}
onBlur={
diff --git a/packages/bootstrap-4/test/__snapshots__/Array.test.tsx.snap b/packages/bootstrap-4/test/__snapshots__/Array.test.tsx.snap
index 943fd9998e..c1e1338ffc 100644
--- a/packages/bootstrap-4/test/__snapshots__/Array.test.tsx.snap
+++ b/packages/bootstrap-4/test/__snapshots__/Array.test.tsx.snap
@@ -515,6 +515,7 @@ exports[`array fields checkboxes 1`] = `
>