diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml
index 00938f3c70c0f58427e5b1302dc9c77f3ee6ed0c..505a554fe65a1a36a891522dcbc8e9e505efb825 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml
@@ -29,7 +29,7 @@
                         <input class="bundle-option-<?php echo $_option->getId() ?> checkbox product bundle option change-container-classname"
                                id="bundle-option-<?php echo $_option->getId() ?>-<?php echo $_selection->getSelectionId() ?>"
                                type="checkbox"
-                               <?php if ($_option->getRequired()) echo 'data-validate="{\'validate-one-required-by-name\':true}"'?>
+                               <?php if ($_option->getRequired()) echo 'data-validate="{\'validate-one-required-by-name\':\'input[name^=&quot;bundle_option[' . $_option->getId() . ']&quot;]:checked\'}"'?>
                                name="bundle_option[<?php echo $_option->getId() ?>][<?php echo $_selection->getId() ?>]"
                                <?php if ($block->isSelected($_selection)) echo ' checked="checked"' ?>
                                <?php if (!$_selection->isSaleable()) echo ' disabled="disabled"' ?>
diff --git a/lib/web/mage/validation.js b/lib/web/mage/validation.js
index 7632ce9b84977587975da37348f383f39395c89e..fbcf394becd3215ce0484cbefb6ddb585879c73c 100644
--- a/lib/web/mage/validation.js
+++ b/lib/web/mage/validation.js
@@ -916,10 +916,10 @@
             'This is a required field.'
         ],
         "validate-one-required-by-name": [
-            function(v, elm) {
+            function(v, elm, selector) {
                 var name        = elm.name.replace(/([\\"])/g, '\\$1'),
                     container   = this.currentForm,
-                    selector    = 'input[name="' + name + '"]:checked';
+                    selector    = selector === true ? 'input[name="' + name + '"]:checked' : selector;
                 
                 return !!container.querySelectorAll(selector).length;
             },