diff -u b/core/modules/quickedit/js/quickedit.es6.js b/core/modules/quickedit/js/quickedit.es6.js
--- b/core/modules/quickedit/js/quickedit.es6.js
+++ b/core/modules/quickedit/js/quickedit.es6.js
@@ -359,31 +359,29 @@
     // [data-quickedit-entity-id] element's data-quickedit-entity-instance-id
     // attribute.
     const entityElementSelector = `[data-quickedit-entity-id="${entityID}"]`;
-    let entityElement = $(fieldElement).closest(entityElementSelector);
-    // In the case of a full entity view page, the entity title is rendered
-    // outside of "the entity DOM node": it's rendered as the page title. So in
-    // this case, we find the lowest common parent element (deepest in the tree)
-    // [data-quickedit-entity-id] element's data-quickedit-entity-instance-id
-    // attribute.
-    var entityElementSelector = '[data-quickedit-entity-id="' + entityID + '"]';
-    var $entityElement = $(entityElementSelector);
+    const $entityElement = $(fieldElement).closest(entityElementSelector);
 
     // If there are no elements returned from `entityElementSelector`
     // throw an error. Check the browser console for this message.
     if (!$entityElement.length) {
-      throw Drupal.t('The field [data-quickedit-field-id="@fieldID"] parent attribute [data-quickedit-entity-id] is missing.', {
-        '@fieldID': fieldID
-      });
+      throw Drupal.formatString(`Quick Edit could not associate the rendered entity field markup (with [data-quickedit-field-id="${fieldID}"]) with the corresponding rendered entity markup: no parent DOM node found with [data-quickedit-entity-id="${entityID}"]. This is typically caused by the theme's template for this entity type forgetting to print the attributes.`);
     }
+    let entityElement = $(fieldElement).closest($entityElement);
 
-    var entityElement = $(fieldElement).closest($entityElement);
+    // In the case of a full entity view page, the entity title is rendered
+    // outside of "the entity DOM node": it's rendered as the page title. So in
+    // this case, we find the lowest common parent element (deepest in the tree)
+    // [data-quickedit-entity-id] element's data-quickedit-entity-instance-id
+    // attribute.
+    var entityElementSelector = '[data-quickedit-entity-id="' + entityID + '"]';
+    var entityElement = $(fieldElement).closest(entityElementSelector);
     // In the case of a full entity view page, the entity title is rendered
     // outside of "the entity DOM node": it's rendered as the page title. So in
     // this case, we find the lowest common parent element (deepest in the tree)
     // and consider that the entity element.
     if (entityElement.length === 0) {
-      var $lowestCommonParent = $entityElement.parents().has(fieldElement).first();
-      entityElement = $lowestCommonParent.find($entityElement);
+      var $lowestCommonParent = $(entityElementSelector).parents().has(fieldElement).first();
+      entityElement = $lowestCommonParent.find(entityElementSelector);
     }
     var entityInstanceID = entityElement
       .get(0)
diff -u b/core/modules/quickedit/js/quickedit.js b/core/modules/quickedit/js/quickedit.js
--- b/core/modules/quickedit/js/quickedit.js
+++ b/core/modules/quickedit/js/quickedit.js
@@ -159,7 +159,12 @@
     var entityID = extractEntityID(fieldID);
 
     var entityElementSelector = '[data-quickedit-entity-id="' + entityID + '"]';
-    var entityElement = $(fieldElement).closest(entityElementSelector);
+    var $entityElement = $(fieldElement).closest(entityElementSelector);
+
+    if (!$entityElement.length) {
+      throw Drupal.formatString('Quick Edit could not associate the rendered entity field markup (with [data-quickedit-field-id="' + fieldID + '"]) with the corresponding rendered entity markup: no parent DOM node found with [data-quickedit-entity-id="' + entityID + '"]. This is typically caused by the theme\'s template for this entity type forgetting to print the attributes.');
+    }
+    var entityElement = $(fieldElement).closest($entityElement);
 
     if (entityElement.length === 0) {
       var $lowestCommonParent = $(entityElementSelector).parents().has(fieldElement).first();
@@ -167,19 +172,11 @@
     var entityID = extractEntityID(fieldID);
 
     var entityElementSelector = '[data-quickedit-entity-id="' + entityID + '"]';
-    var $entityElement = $(entityElementSelector);
-
-    if (!$entityElement.length) {
-      throw Drupal.t('The field [data-quickedit-field-id="@fieldID"] parent attribute [data-quickedit-entity-id] is missing.', {
-        '@fieldID': fieldID
-      });
-    }
-
-    var entityElement = $(fieldElement).closest($entityElement);
+    var entityElement = $(fieldElement).closest(entityElementSelector);
 
     if (entityElement.length === 0) {
-      var $lowestCommonParent = $entityElement.parents().has(fieldElement).first();
-      entityElement = $lowestCommonParent.find($entityElement);
+      var $lowestCommonParent = $(entityElementSelector).parents().has(fieldElement).first();
+      entityElement = $lowestCommonParent.find(entityElementSelector);
     }
     var entityInstanceID = entityElement.get(0).getAttribute('data-quickedit-entity-instance-id');
 
