Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   нужно обратиться к input через childNodes для присвоения id (https://javascript.ru/forum/misc/80780-nuzhno-obratitsya-k-input-cherez-childnodes-dlya-prisvoeniya-id.html)

Igor Jort 31.07.2020 16:02

нужно обратиться к input через childNodes для присвоения id
 
1. у меня подчеркивает childNodes и пишет Cannot read property 'childNodes' of undefined
2. консоль выдает именно масив (если убрать строчку
newLet = inputs[0].childNodes
), может я не правильную команду написал именно в добавлении атрибута?
let inputs = document.getElementsByClassName(""); //класс от div
newLet = inputs[0].childNodes
console.log(inputs);

for (let i = 0; i < inputs.length; i++) {
    let currentElement = inputs[i];
    currentElement.setAttribute("id", "---");
};

рони 31.07.2020 16:25

Igor Jort,
скрипт после элементов div расположен?

рони 31.07.2020 16:59

Цитата:

Сообщение от Igor Jort
Весь мой код на скрине

не осилил , а можно код?
и то что id это уникальный номер, видимо вам не очень понятно.

Igor Jort 31.07.2020 17:13

Цитата:

Сообщение от рони (Сообщение 527426)
не осилил , а можно код?
и то что id это уникальный номер, видимо вам не очень понятно.

Я осознаю значимость id, дело в том что пользователь сам добавляет (сколько хочет) текстовых полей, и они должны быть одинаковы, но я сейчас понял что можно присвоить id только к одному и будет работать везде.
let firstButton = document.createElement("button");
firstButton.innerHTML = "";
firstButton.id = "firstBtn";
firstButton.className = "btn btn-success btn-lg";
firstButton.setAttribute("onclick", "");
firstButton.style.position = "fixed";
firstButton.style.bottom = "80px";
firstButton.style.left = "800px";
document.body.appendChild(firstButton);

let secondButton = document.createElement("button");
secondButton.innerHTML = "";
secondButton.id = "secondBtn";
secondButton.className = "btn btn-success btn-lg";
secondButton.setAttribute("onclick", "");
secondButton.style.position = "fixed";
secondButton.style.bottom = "80px";
secondButton.style.right = "800px";
document.body.appendChild(secondButton);




let inputs = document.getElementsByClassName("---");
newLet = inputs[0].childNodes;
console.log(newLet);

for (let i = 0; i < inputs.length; i++) {
    let currentElement = inputs[i];
    currentElement.setAttribute("id", "---");
};

рони 31.07.2020 17:20

Цитата:

Сообщение от Igor Jort
и будет работать везде.

не везде, а только первый с таким id.

рони 31.07.2020 17:22

Igor Jort,
когда создаёте поле тогда и добавляйте id, а лучше использовать класс.

Igor Jort 31.07.2020 17:35

Цитата:

Сообщение от рони (Сообщение 527435)
Igor Jort,
когда создаёте поле тогда и добавляйте id, а лучше использовать класс.

спасибо, всё работает


Часовой пояс GMT +3, время: 03:20.