From 2abb23244fc54535e009f427b5592180289037ae Mon Sep 17 00:00:00 2001 From: Dmytro Zasiadko Date: Wed, 25 Jul 2018 23:29:46 +0200 Subject: [PATCH] Make sure that `select` has `multiple` attribute set to appropriate state before appending options fixes #13222 --- packages/react-dom/src/client/ReactDOMFiberComponent.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/react-dom/src/client/ReactDOMFiberComponent.js b/packages/react-dom/src/client/ReactDOMFiberComponent.js index bad296429e43..df92cc38c802 100644 --- a/packages/react-dom/src/client/ReactDOMFiberComponent.js +++ b/packages/react-dom/src/client/ReactDOMFiberComponent.js @@ -378,6 +378,12 @@ export function createElement( // See discussion in https://github.com/facebook/react/pull/6896 // and discussion in https://bugzilla.mozilla.org/show_bug.cgi?id=1276240 domElement = ownerDocument.createElement(type); + // Make sure that `select` has `multiple` attribute set to appropriate state before appending options + // To prevent first option be initialy made selected + // see more details in https://github.com/facebook/react/issues/13222 + if (type === 'select' && !!props.multiple) { + domElement.setAttribute('multiple', 'true'); + } } } else { domElement = ownerDocument.createElementNS(namespaceURI, type);