Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как узнать тип объекта по его id? (https://javascript.ru/forum/dom-window/83462-kak-uznat-tip-obekta-po-ego-id.html)

Levvarrr 14.12.2021 22:05

Как узнать тип объекта по его id?
 
Всем привет!
Я прям очень начинающий и не могу разобраться в одном моменте.
У меня есть большая таблица с целой кучей текстовых полей и чекбоксов.
Пример HTML
<input type="number" id="2" step="1" min="0" max="250">
<input type="checkbox" id="3">

Используя Json я заполняю все поля и ставлю галки.
Вот таким методом:
var dataPars = JSON.parse(o.responseText);
      for (var key in dataPars) {
         if (key=="3") {
            if (dataPars[key] > 0)
               document.getElementById(key).checked = true;
         }
         else document.getElementById(key).value = dataPars[key];
      }

Сам Json
Код:

{
  "2": 102,
  "3": 3
}

Все упирается в ID элемента. Он должен быть обязательно числом.
И вот встает вопрос. Если у меня много checkbox то это получается нужно прописывать каждый индекс в if.
А есть ли способ узнать какого типа объект скрывается под id?
Что бы вписать в условие (для checkbox).

Возможно я гаражу огород и это можно сделать как то проще.... не знаю. Примеров конкретных в интернете найти не смог с таким видом исключения.

рони 14.12.2021 22:57

Levvarrr,
for (let key in dataPars) {
            let input;
            let {type} = input = document.getElementById(key);
            if(type === "checkbox") input.checked = dataPars[key] > 0;
            else input.value = dataPars[key];
        }

Levvarrr 15.12.2021 08:15

ГЕНИАЛЬНО!
Большое спасибо! Работает! :dance:

Aetae 15.12.2021 11:34

рони, input у тя глобальный теперь, классика.)

рони 15.12.2021 13:09

Aetae,
:) :thanks: добавил let input;


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