а почему эти строки все находят при запуске их в консоли а?
тут явно указан элемент cardNum в коллекции input
document.getElementsByTagName('input')['cardNum'].value =111;
и это работает вообще и в данном случае проверено на этом коде в консоли
а то что querySelector не может найти на странице элемент
это я написал в первом сообщении как и то сто он находит запуском этой же строки в консоли