diff --git a/src/SortableContainer/index.js b/src/SortableContainer/index.js
index <HASH>..<HASH> 100644
--- a/src/SortableContainer/index.js
+++ b/src/SortableContainer/index.js
@@ -214,11 +214,12 @@ export default function sortableContainer(WrappedComponent, config = {withRef: f
 				};
 
 				const fields = node.querySelectorAll('input, textarea, select');
+				const fields = node.querySelectorAll('input, textarea, select');
 				const clonedNode = node.cloneNode(true);
+				const clonedFields = clonedNode.querySelectorAll('input, textarea, select'); // Returns the clonedFields in the same order as fields
 
-				fields.forEach((field) => {
-					const element = clonedNode.querySelector("input[name='"+field.name+"'], textarea[name='"+field.name+"'], select[name='"+field.name+"']");
-					element ? element.value = field.value : null;
+				clonedFields.forEach((field, index) => {
+					return field.value = fields[index] && fields[index].value;
 				});
 
 				this.helper = this.document.body.appendChild(clonedNode);
fix: Update value pre-population logic to be more reliable