Я просматривал вокруг Stack Overflow в течение нескольких часов и видел похожие вопросы, но ни один из поставляемых решений не является тем, что я ищу, или просто дон Не работай.Javascript - Как получить идентификатор кнопки, нажатой
Так что я пытаюсь получить идентификатор кнопки, которая находится под определенным div, используя только Javascript, и не использует Javascript внутри HTML-кода.
Мой HTML код выглядит следующим образом:
<div id="constants" class="hidden">
<fieldset>
<legend>Gas</legend>
<div>
<div class="daily_charge">
<p>Daily charge: <span id="gasDaily"></span></p>
<button id="gasDaily_Edit">Edit</button>
</div>
<div class="rate_charge">
<p>Gas rate: <span id="gasRate"></span></p>
<button id="gasRate_Edit">Edit</button>
</div>
</div>
</fieldset>
<fieldset>
<legend>Elec</legend>
<div>
<div class="daily_charge">
<p>Daily charge: <span id="elecDaily"></span></p>
<button id="elecDaily_Edit">Edit</button>
</div>
<div class="rate_charge">
<p>Elec rate: <span id="elecRate"></span></p>
<button id="elecRate_Edit">Edit</button>
</div>
</div>
</fieldset>
<fieldset>
<legend>Water</legend>
<div>
<div class="daily_charge">
<p>Daily charge: <span id="waterInDaily"></span></p>
<button id="waterInDaily_Edit">Edit</button>
</div>
<div class="rate_charge">
<p>Water rate: <span id="waterInRate"></span></p>
<button id="waterInRate_Edit">Edit</button>
</div>
</div>
</fieldset>
</div>
и в JavaScript, я пытался использовать неудачно является:
var constantsDiv = document.getElementById("constants");
var constants_button = constantsDiv.getElementsByTagName("button");
var button_count = constants_button.length;
for (var i = 0; i <= button_count; i += 1) {
constants_button[i].onclick = function (e) {
alert(this.id);
};
};
Для начала я не уверен, поставив его в for loop полностью верный путь, но я получаю «Невозможно установить свойство« onclick »неопределенной или нулевой ссылки» в любом случае.
Любые идеи?
Благодаря
Измените '<=' на '<'. Массивы/списки всегда основаны на 0. Кроме того, где/когда/как выполняется этот код? Выполняется ли это до того, как элементы существуют случайно? –
Можете ли вы рассказать подробнее? –
Вы разместили код при загрузке окна? https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onload –