ttter, ну слушайте, он у вас элемент найти не может. Такая ошибка может быть только если в момент выполнения кода, элемент с id равным card отсутствовал бы. Тут два варианта или ваша форма подгружается динамически или вы вставляйте скрипт выше формы. Попробуйте так:
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', function() {
var input = document.querySelector('input#card');
if (input) {
input.value = 'Вставляемый текст';
}
else {
console.log('Ошибка! Не удалось найти input c id равным card');
}
});
</script>
Этот код запустится только после готовности документа. Если поле будет найдено, текст вставится. Если нет, то будет предупреждение в консоли, что элемент отсутствует. В последнем случае, это означает, что форма у вас грузится динамически.
var input = document.querySelector('input#card');
if (input) {
input.value = 'Вставляемый текст';
}
else {
console.log('Ошибка! Не удалось найти input c id равным card');
}
Не удается найти input, а если удалю autocomplete="off" и вставлю этот же код, то все нормально вводится
ttter, значит вы дурите людей, не показывая весь свой код и каким образом это поле появляется у вас. Если оно просто свёрстано в html и выглядит точно так же, как вы скинули, то всё будет работать. Значит у вас что-то не так. Выложите свой код в песочнице и всё станет понятно!!
ttter, по всей видимости ваше расширение как-то не так работает. Напишите мой же код в консоли и всё сработает. Значит варианта 2. Либо на самом сайте поле вставляется через js и ваш код срабатывает раньше, либо что-то в вашем расширении не так.
1й вариант можно легко проверить, путём ctrl + u(изначальная разметка от сервера) и через поиск найти элемент.
Дима Турков, Да, на изначальной разметке только js, но странность в том, что я на этой же странице уже вводил данные в другой инпут и все получалось, думал, что и с этим полем все так же получится. И почему-то при удалении autocomlete через код элемента и повторно вставив скрипт все вводится