|
Динамическое создание элементов. Не работает onclick
Здравствуйте! Пытаюсь сделать маленький тест, каждый новый вопрос появляется после ответа на предыдущий.
Создаю кнопку перехода к следующему вопросу.
var next = document.createElement("input");
next.setAttribute('type','button');
next.setAttribute('value','next');
next.setAttribute('onclick',question2);
//next.attachEvent('onclick',question2);
document.body.appendChild(next);
где question2 - функция, в которую хотелось бы передать ещё параметр - ответ на предыдущий вопрос. Но это потом. Для начала у меня не срабатывает она никак:
function question2()
{
document.write('it works!');
alert("wtf");
}
Если расскоментирую attachEvent, а через аттрибут закоментирую, то кнопка вообще не появляется. Подскажите в чём проблема, или хотя бы где посмотреть/почитать. |
http://javascript.ru/tutorial/events/intro
И можно писать просто next.type = "button", next.value = "next" |
Цитата:
|
Здесь конструкция с кавычками setAttribute аналогична
next.setAttribute('onclick','question2()');
|
Цитата:
next.onclick = question2;
function question2(){
alert('Ya');
}
еще статья на заметку http://javascript.ru/unsorted/top-10...ns#10-addevent |
Цитата:
Обычно изменяют через свойства. |
И всё-таки, что-то никак не получается сделать рабочим онклик!!!
прошу взглянуть весь код (там пока бардак, но даже с алертом не пашет):
function start()
{
document.write('Choose importance of decision<br />');
// Create a select element dynamically
var select = document.createElement("select");
for (var i=1; i<=10; i++)
{
var option = document.createElement("option");
option.text = i;
option.value = i;
try
{
select.add(option, null); //Standard
} catch(error)
{
select.add(option); // IE only
}
}
document.body.appendChild(select);
// End of creating select
var next = document.createElement("input");
next.setAttribute('type','button');
next.setAttribute('value','next');
//next.addEventListener = ("click", function() { alert('whats up, nigga?') }, false)
next.onclick = function() { alert('whats up, nigga?'); };
//next.onclick = function() { question2('whats up, nigga?') }
//next.setAttribute('onclick',question2);
//next.attachEvent('onclick',question2);
document.body.appendChild(next);
}
function question2(msg)
{
document.write('it works!');
alert(msg);
}
Почему не хочет кликаться? (там закомментированы все попытки) |
Как так? Код рабочий.
Загляни в консоль ошибок, должно проясниться. Обычно она открывается по Ctrl+Shift+I. |
Ничего не показывает. У вас код работает?
|
|
| Часовой пояс GMT +3, время: 13:34. |
|