diff --git a/packages/form-core/src/FormApi.ts b/packages/form-core/src/FormApi.ts index 7e4714f35..82e1f400f 100644 --- a/packages/form-core/src/FormApi.ts +++ b/packages/form-core/src/FormApi.ts @@ -562,7 +562,7 @@ export class FormApi< } // If any fields are not blurred - if (!field.instance.state.meta.isBlurred) { + if (!field.instance.state.meta.isBlurred && cause === 'submit') { // Mark them as blurred field.instance.setMeta((prev) => ({ ...prev, isBlurred: true })) } @@ -629,12 +629,6 @@ export class FormApi< fieldInstance.setMeta((prev) => ({ ...prev, isTouched: true })) } - // If the field is not blurred (same logic as in validateAllFields) - if (!fieldInstance.state.meta.isBlurred) { - // Mark it as blurred - fieldInstance.setMeta((prev) => ({ ...prev, isBlurred: true })) - } - return fieldInstance.validate(cause) }