Мне нужно проверить форму платежа, и в случае ошибки она должна отображаться в предупреждении при загрузке. Когда я нажимаю на кнопку «Отправить», у меня появляется предупреждение, но я закрываю его и снова нажимаю «Отправить», и я получаю эту ошибку.
Uncaught TypeError: Cannot read property 'style' of null at HTMLButtonElement.campos_ob
Это мой код:
HTML
<button type="button" class="close" data-dismiss="alert">×</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";
}
}
Я надеюсь, вы могли бы помочь мне