Почему у меня возникает эта ошибка при проверке формы оплаты? - PullRequest
0 голосов
/ 18 октября 2019

Мне нужно проверить форму платежа, и в случае ошибки она должна отображаться в предупреждении при загрузке. Когда я нажимаю на кнопку «Отправить», у меня появляется предупреждение, но я закрываю его и снова нажимаю «Отправить», и я получаю эту ошибку.

Uncaught TypeError: Cannot read property 'style' of null at HTMLButtonElement.campos_ob

Это мой код:

HTML

            <button type="button" class="close" data-dismiss="alert">&times;</button>
            <p id="texto">AAAA</p>
        </div>

JS

<script>

        //variables

        var name = document.getElementById('name').value;
        var email = document.getElementById('email').value;

        var password = document.getElementById('password').value;
        var email_paypal = document.getElementById('email-paypal').value;

        //Funcion comprobar si el campo están completos

        window.onload = function () {

            document.getElementById("validar").addEventListener("click", campos_ob);
            document.getElementById("formapago").addEventListener("change", cambio_formapago);
        }


        function campos_ob() {


            if (name == "" || email == "" || password == "") {
                // document.getElementById("texto").innerHTML = "";
                var ppp = document.getElementById('alerta');
                document.getElementById('alerta').style.display = "block";
                document.getElementById('texto').innerHTML = "Error, debes rellenar todos los campos";
                    // let = null;
                //document.getElementById("texto").value = texto;
                //location.reload();
                //event.preventDefault();

            }
            else if (!email.match(/^(?:[^<>()[\].,;:\s@"]+(\.[^<>()[\].,;:\s@"]+)*|"[^\n"]+")@(?:[^<>()[\].,;:\s@"]+\.)+[^<>()[\]\.,;:\s@"]{2,63}$/i
            )) {

                {
                    document.getElementById('alerta').style.display = "block";
                    document.getElementById('texto').innerHTML = "Email erroneo";

                }
            }
            else if (validar_tarjeta())
            {
                document.getElementById('alerta').style.display = "block";
                document.getElementById('texto').innerHTML = "Tarjeta erronea";

            } else {
                document.getElementById('alerta').style.display = "none";
            }
        }

Я надеюсь, вы могли бы помочь мне

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...