Browse Source

fix: getPopupContainer will return closet form first (#5612)

Netfan 4 weeks ago
parent
commit
0c3dd92592
1 changed files with 6 additions and 2 deletions
  1. 6 2
      packages/utils/src/helpers/get-popup-container.ts

+ 6 - 2
packages/utils/src/helpers/get-popup-container.ts

@@ -1,6 +1,10 @@
 /**
- * Returns the parent node of the given element or the document body if the element is not provided.it
+ * If the node is holding inside a form, return the form element,
+ * otherwise return the parent node of the given element or
+ * the document body if the element is not provided.
  */
 export function getPopupContainer(node?: HTMLElement): HTMLElement {
-  return (node?.parentNode as HTMLElement) ?? document.body;
+  return (
+    node?.closest('form') ?? (node?.parentNode as HTMLElement) ?? document.body
+  );
 }