Вы не можете объявить переменные в HTML. Поэтому невозможно сделать что-то вроде onclick="newImage(variable);"
, исключительно с HTML. Если вы используете фреймворк, такой как ASP.NET, вы можете делать такие вещи, как onclick="newImage(@variable);"
, используя Razor. Я полагаю, что Angular, React и т. Д. Предоставляют аналогичные функции.
Однако есть и другие способы добиться чего-то похожего в «ванильной» настройке.
Если это просто статическое число, вы можете передать его без переменной. Что-то вроде onclick="newImage(3);"
Вы также можете установить атрибут value
, который также доступен в JavaScript. что-то вроде <p id="poster" value="3" onclick="newImage();">Poster</p>
.
Тогда в JS:
function newImage(){
value = document.getElementById("poster").value;
/* do something with the value */
}
Если вы используете PHP, вы также можете передавать переменные PHP в JavaScript с помощью функции onclick, как показано здесь . Я бы порекомендовал этот маршрут, если вы динамически генерируете свой HTML (например, в цикле PHP) и не хотите жестко кодировать каждое отдельное значение.