У меня мало знаний в javascript, поэтому я не знаю, в чем проблема, Я создаю divs динамически в js, и каждый div вызывает функцию при нажатии, но функция не реконструирован. Это часть кодаФункция Javascript не распознается
for (......) {
var listatema = document.createElement("div");
listatema.innerHTML += "<a href='javascript: void(0)' onClick='functest(" + pag + ")'>" + temat + "</a>";
document.getElementById('menu').appendChild(listatema);}
}
«Tema» является текст, функция «functest» имеет аргумент «вол [AUX]», это число.
Функция:
function functest(arg){
console.log(arg)
}
другой альтернативы, что я пытался это изменить, что: onClick='"+ functest(pag) +"'
:
я изменить позицию кавычки «» и функция работы хорошо, но она выполняется, когда страница загружена, она не дожидается, чтобы сделать клик.
Я нарушающие покой мой мозг над этим один, проверяя аналогичное решение на JSFiddle. Что действительно интересно, так это то, что ваше ** первое ** решение отлично работает для меня в фрагменте кода, но говорит мне, что функция не определена на JSFiddle. Я скопировал ваш код точно. Любые идеи, почему это было бы? [Фидл] (https://jsfiddle.net/Obsidian_Age/yrL8ybgm/). Ваше второе решение, похоже, отлично работает в обоих местах :) –
Скорее всего, скрипт вставляется в jsFiddle. Я думаю, это потому, что они инкапсулируют функцию в обработчик 'onLoad', поэтому она не поднимается в глобальную область. Если вы добавите встроенный скрипт в HTML, он должен работать - https://jsfiddle.net/msindwan/yrL8ybgm/1/. –
Это похоже! Спасибо за разъяснение :) Хотя я и не тот, кто задал этот вопрос, вы все еще оказали мне огромную помощь в указании ограниченного объема JSFiddle. Я уже поддержал ваш ответ, но хотел бы, чтобы я мог наградить вас за репутацию за ваш комментарий;) –