Skip to content

Commit 0b4abb2

Browse files
committed
use simplier validation to include form attribute
1 parent 82581e7 commit 0b4abb2

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

packages/react-dom-bindings/src/events/plugins/FormActionEventPlugin.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,7 @@ function extractEvents(
9292
const temp = submitter.ownerDocument.createElement('input');
9393
temp.name = submitter.name;
9494
temp.value = submitter.value;
95-
const isOutsideForm = !form.contains(submitter);
96-
if (isOutsideForm) {
95+
if (form.id) {
9796
temp.setAttribute('form', form.id);
9897
}
9998
(submitter.parentNode: any).insertBefore(temp, submitter);

packages/react-dom/src/__tests__/ReactDOMForm-test.js

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -494,21 +494,24 @@ describe('ReactDOMForm', () => {
494494
await act(async () => {
495495
root.render(
496496
<>
497-
<button
498-
form="form"
499-
name="button"
500-
value="outside"
501-
ref={outsideButtonRef}>
502-
Edit from outside
503-
</button>
504-
<form id="form" action={action}>
497+
<form action={action}>
505498
<input type="text" name="title" defaultValue="hello" />
506499
<input type="submit" name="button" value="save" />
507500
<input type="submit" name="button" value="delete" ref={inputRef} />
508501
<button name="button" value="edit" ref={buttonRef}>
509502
Edit
510503
</button>
511504
</form>
505+
<form id="form" action={action}>
506+
<input type="text" name="title" defaultValue="hello" />
507+
</form>
508+
<button
509+
form="form"
510+
name="button"
511+
value="outside"
512+
ref={outsideButtonRef}>
513+
Button outside form
514+
</button>
512515
,
513516
</>,
514517
);

0 commit comments

Comments
 (0)