본문 바로가기
프로그래밍/Blazor

C# Blazor App에서 OnValidSubmit 등록한 함수가 실행되지 않는 문제

by bantomak 2023. 4. 19.

 


예제 코드

<EditForm Model="@_model" OnValidSubmit="@RegisterAccount">
    <DataAnnotationsValidator />
    <ValidationSummary />
    <div class="form-outline mb-4">
        <label class="form-label" for="Email">Email</label>
        <InputText type="email" placeholder="Email" id="Email" class="form-control" @bind-Value="_model.Email" />
    </div>
    <div class="form-outline mb-4">
        <label class="form-label" for="Password">Password</label>
        <InputText type="password" placeholder="Password" id="Password" class="form-control" @bind-Value="_model.Password" />
    </div>
    <div class="form-outline mb-4">
        <label class="form-label" for="ConfirmPassword">ConfirmPassword</label>
        <InputText type="password" placeholder="Confirm Password" id="ConfirmPassword" class="form-control" @bind-Value="_model.ConfirmPassword" />
    </div>

    <button type="button" class="btn btn-primary btn-block mb-4">Sign up</button>
</EditForm>

@code {
    private RegisterModel _model = new RegisterModel();

    private void RegisterAccount()
    {
        AccountService.Register(_model);
    }
}

 

문제 해결

17번째 줄 코드

<button type="button" class="btn btn-primary btn-block mb-4">Sign up</button>

에서 button을 "submit"으로 변경해주면 정상적으로 작동한다.

 

OnValidSubmit이라는 이름에 맞게 타입이 submit일때만 작동하는 것으로 생각된다.

댓글