#javascript #html #node.js #json #dom
#javascript #HTML #node.js #json #dom
Вопрос:
Я создаю несколько кнопок HTML, которые будут действовать как список, и все они добавляются к тому же, у которого есть идентификатор ‘locations’. Возможно ли иметь разные идентификаторы для каждой кнопки.
Могу ли я назначить переменной идентификатор, а не строку?
for(let i=0;(i<countryJSON.length)amp;amp;(i<10); i ){
document.getElementById("locations").innerHTML = `<button type='button' id=countrylist class="list-group-item list-group-item-action">${countryJSON[i].name}</button>`;
}
Комментарии:
1. Как вы думаете, зачем вам вообще нужен идентификатор?
2. Вы всегда можете добавить значение
i
к значению идентификатора countrylist3.
id=countrylist${i}
но на самом деле идентификатор не нужен….4.
document.getElementById("locations").innerHTML =
это действительно плохо сказывается на производительности и имеет и другие побочные эффекты.
Ответ №1:
Вы имели в виду что-то подобное?
const countryJSON = [
{ name: 'one' }, { name: 'two' }, { name: 'three' },
];
const locations = document.getElementById('locations');
for(let i = 0; i < countryJSON.length amp;amp; i < 10; i ) {
const btn = document.createElement('button');
btn.id = `location${i}`;
btn.className = 'list-group-item list-group-item-action';
btn.innerHTML = countryJSON[i].name;
locations.appendChild(btn);
}
<div id="locations"></div>
В этом случае каждая кнопка имеет свой собственный уникальный идентификатор, такой как location0
, location1
и т.д.
Ответ №2:
Вы можете добавить значение i в каждую кнопку, и оно будет другим, поскольку оно меняется каждый раз для новой кнопки.
for(let i=0;(i<5)amp;amp;(i<10); i ){
document.getElementById("locations").innerHTML = "<button type='button' id=countrylist-" i " class='list-group-item list-group-item-action'>test</button>";
console.log('Button with id countrylist-' i ' has been added.');
}
<div id="locations"></div>
Ответ №3:
Конечно, вы уже используете литерал шаблона, поэтому вы можете задать идентификатор так же, как вы задаете текст кнопки.
`<button id=${countryJSON[i].id}>${countryJSON[i].name}</button>`