Я пытаюсь создать опцию для добавления дополнительных флажков/текстовых полей на мой сайт. У меня есть кнопка «+», связанная с функцией, которая создает поля, названные в числовом порядке. Я хотел бы добавить прослушиватель событий к флажку, который вызовет функцию, для которой требуется уникальная переменная, на основе имени этого флажка.динамически добавить прослушиватель событий для функции с переменной
<div id="container">
<input name="+" type="button" id="+" onclick="addInput()" value="+" label="+" />
</div>
<p id=demo>eeeeeeee</p>
var countBox = 1;
function addInput() {
var breakNode = document.createElement("br");
breakNode.className = countBox.toString();
//create checkbox
var checkbox = document.createElement("input");
checkbox.type = "checkbox";
checkbox.value = "ProgramSpecificBox" + countBox.toString();
checkbox.name = "ProgramSpecificBox" + countBox.toString();
checkbox.id = "ProgramSpecificBox" + countBox.toString();
//create Amount
var Amount = document.createElement("input");
Amount.type = "number";
Amount.value = countBox.toString();
Amount.name = "ItemCostVis"+ countBox.toString();
Amount.id = "ItemCostVis" + countBox.toString();
var container = document.getElementById('container');
container.appendChild(breakNode);
container.appendChild(checkbox);
container.appendChild(Amount);
checkbox.addEventListener("click", function() {
testthis(NEED CODE HERE);
})
countBox += 1;
}
function testthis (text) {
document.getElementById("demo").innerHTML = text;
}
Что я должен поставить вместо «NEED код здесь», чтобы получить такой же, как идентификатор флажком, который называется функцией?
'this.id' должен работать. [Тест здесь] (http://jsfiddle.net/xmpr6n3e/). Тем не менее, вы можете рассмотреть один прослушиватель для всех флажков, а не связывать новый слушатель для каждого из них. – showdev
Спасибо, что работает. – pppp
Что это значит, что один приемник для всех флажков? – pppp