Member 13835151 Ответов: 1

С помощью JS цикл, чтобы отправить уникальный Варс с кнопки HTML в функцию


Новичок здесь. У меня есть цикл, который создает 26 кнопок с уникальными идентификаторами и значениями. То, с чем я борюсь, - это выяснить правильный способ отправки идентификатора кнопки в функцию, чтобы я мог хранить уникальные VAR для каждой кнопки независимо, не создавая более одной функции.

Что я уже пробовал:

В настоящее время у меня есть массив с 26 элементами, которые мне нужны для моих кнопок и следующих функций:

function makeButtons() {
	for (var i = 0; i < 26; i++) {
		document.getElementById("whereButtonsGo").innerHTML += "<input type = 'button' value = '" + items[i] + "' id = 'button" + items[i] + "' onclick = doThing(button" + items[i] + ")'>";  
	}
}
function doThing(id) {
	document.getElementById("'" + id.value + "'").style.color = "pink"; 
}


Создание кнопок работает нормально, но я не могу понять, как отправить var из строки onclick function (), которая создает кнопку, в фактическую функцию. Любая помощь будет очень признательна!

1 Ответов

Рейтинг:
11

Richard Deeming

Попробовать это:

function makeButtons() {
    for (var i = 0; i < 26; i++) {
        document.getElementById("whereButtonsGo").innerHTML += "<input type='button' value='" + items[i] + "' id='button" + items[i] + "' onclick='doThing(this);return false;'>";  
    }
}

function doThing(theButton) {
    theButton.style.color = "pink"; 
}
Демонстрация[^]


Member 13835151

Большое спасибо! Я не знал об этом.