Я написал программу, которая выводит Ajax только один раз [закрыто]

Не уставайте Я написал программу для регистрации пользователя, например, пользователь пришел и ошибся в обоих паролях, покажите ошибку с помощью Ajax, конечно, это произойдет только один раз, и если пароль будет неправильным снова, ошибка не будет отображаться, что означает, что он будет использоваться только один раз. Бесконечное использование в Ajax, конечно, страница не загружается.

HTML-код

<form class="mt-4" method="post" id="my_form">
                            {% csrf_token %}
                            <!-- Email -->
                            <div class="mb-3">
                                {{ register_forms.email.label_tag }}
                                {{ register_forms.email }}
                            </div>
                            <!-- Password -->
                            <div class="mb-3">
                                {{ register_forms.password.label_tag }}
                                {{ register_forms.password }}
                            </div>
                            <!-- Password -->
                            <div class="mb-3">
                                {{ register_forms.confirm_password.label_tag }}
                                {{ register_forms.confirm_password }}
                            </div>
                            <!-- Checkbox -->
                            <div class="mb-3 form-check">
                                <input type="checkbox" class="form-check-input" id="exampleCheck1">
                                <label class="form-check-label" for="exampleCheck1">من می خواهم برای عضویت در
                                    خبرنامه نیز ثبت نام کنم</label>
                            </div>
                            <!-- Button -->
                            <div class="row align-items-center">
                                <div class="col-sm-6">
                                    <button type="submit" class="btn btn-success mb-2" id="LoadButton"><i
                                            class="fa fa-spinner fa-spin spinner" id="spinner"></i><span
                                            class="text">ثبت نام</span></button>
                                </div>
                                <div class="col-sm-8 text-sm-end">
                                    <span>آیا قبلا ثبت نام کرده اید؟ <a href="signin.html"><u>ورود</u></a></span>
                                </div>
                            </div>
                        </form>

Django Code

class RegisterView(View):
def get(self, request: HttpRequest):
    register_form = RegistrationForm()
    context = {'register_forms': register_form}
    return render(request, 'account_module/register_page.html', context)

def post(self, request: HttpRequest):
    register_form = RegistrationForm(request.POST)
    if register_form.is_valid():
        email = register_form.cleaned_data.get('email')
        password = register_form.cleaned_data.get('password')
        confirm_password = register_form.cleaned_data.get('confirm_password')
        if password == confirm_password:
            user: bool = User.objects.filter(email__iexact=email).exists()
            if user:
                return JsonResponse({'error': True, 'error_message': 'ایمیل وارد شده تکراری می باشد'}, status=400)
        else:
            return JsonResponse({'error': True, 'error_message': 'کلمه عبور و تکرار کلمه عبور باهم مغایرت دارند'},
                                status=400)
    context = {'register_forms': register_form}
    return render(request, 'account_module/register_page.html', context)

Ajax

$(function () {
        $("#my_form").on('submit', function (event) {
            event.preventDefault();

            //  Ajax Code
            $.ajax({
                url: '{% url "account_module:register_page" %}',
                type: 'POST',
                data: $(this).serialize(),
                dataType: 'json',
                success: function (response) {
                    if (response.success) {

                    } else {

                    }
                },
                error: function (xhr, status, error) {
                    if (xhr.status === 400) {
                        // show animation success and message
                        let responseObject = JSON.parse(xhr.responseText)
                        $(".back_err").show();
                        $(".success-animation-error").show();
                        $(".text_header_error").text("عملیات ناموفق")
                        $(".texts_err").text(responseObject.error_message)
                    }
                }
            })
        })
    })
Вернуться на верх