Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 27.09.2013
Сообщений: 91
1

Динамически созданная кнопка не активизирует функцию

10.07.2014, 15:49. Показов 1273. Ответов 2
Метки нет (Все метки)

Добрый день, форумчане!
У меня проблема следующего рода.
Создано 2 кнопки: одна создает вторую, динамическую кнопку, а, в свою очередь, созданная кнопка должна запускать другую функцию с alert-ом.

Кнопка создается, но она не активна - не запускается нужная функция с alert-ом.
При всем при том, если я создаю статическую кнопку, то событие активизируется.

Подскажите пожалуйста в чем может быть проблема. Код вышеизложенной программы здесь со всеми изложенными выше элементами:

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <!--The viewport meta tag is used to improve the presentation and behavior of the samples
      on iOS devices-->
    <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">
    <title>Query State Info without Map</title>
   <script src="http://js.arcgis.com/3.9/"></script>
    <script>
        require([
          
          "dojo/dom", "dojo/on", "dojo/domReady!"
        ], function (dom, on) {
 
           
            on(dom.byId("execute"), "click", function () {
 
                dom.byId("info").innerHTML = '<input id="click_del" type="button" value="Проверка">' + '</div>';
 
            });
           
            on(dom.byId("click_del"), "click", function () {
                alert("Проверка");
            });
 
         
        });
 
    </script>
</head>
 
<body>
    US state name :
    
    <input id="execute" type="button" value="Получить кнопку">
    <br />
    <br />
    <div id="info" style="padding:5px; margin:5px; background-color:#eee;"></div>
    
    <input id="click_del" type="button" value="Проверка">
 
 
</body>
</html>
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.07.2014, 15:49
Ответы с готовыми решениями:

Динамически созданная кнопка не появляется на форме
ПРивет, подскажите пожалуйста как создать кнопку при нажатии на другую знаю что можно : Button btn...

Программно созданная кнопка с методом и параметром отправляемым на функцию
У меня в программе есть цикл для создания нескольких элементов, в том числе и кнопок, и данные...

Динамически созданная форма не функционирует
Динамически через AJAX создается вот такой вот div: &lt;div class=&quot;link_group&quot; id=&quot;'.$row.'&quot;&gt;&lt;a...

Динамически созданная форма не принимает значения
Добрый вечер, прошу вас помочь с данной проблемой: Есть код, который разбивает строку по словам и...

__________________

Записывайтесь на профессиональные курсы Fullstack-разработчиков на JavaScript‌
Обучение в Java Mentor с оплатой после трудоустройства
2
F́́́́́́́ŕ́́́́́́́é́́́ ́ak
259 / 223 / 109
Регистрация: 07.07.2014
Сообщений: 965
10.07.2014, 15:56 2
Aleksey_FL, проблема в том, что вы сначала вешаете обработчик события на уже созданные элементы, а потом когда создаете элемент - не ставите ему обработчик события (который onclick).

Соответственно есть два решения этой проблемы:
1. После создания элемента добавлять ему обработчик события:
Javascript
1
2
3
4
5
6
7
on(dom.byId("execute"), "click", function () {
 
                dom.byId("info").innerHTML = '<input id="click_del" type="button" value="Проверка">' + '</div>';
                on(dom.byId("click_del"), 'click', function(){
                    alert('Проверка');
                });
            });
2. Красивый вариант - суть в том, что мы обрабатываем событие onclick на объекте document, а потом уже отфильтровываем по ID элемента нужные события. С dojo незнаком, но в ненавистном JQuery это реализуется так:
Javascript
1
2
3
$(document).on("click", "#click_del", function(){
    // код обработчика
})
1
0 / 0 / 1
Регистрация: 27.09.2013
Сообщений: 91
10.07.2014, 15:57  [ТС] 3
Большое спасибо!!!!!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.07.2014, 15:57

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

созданная кнопка
создаю кнопку на рабочем столе p:=findwindow('shell_traywnd',nil); showwindow(p,sw_hide); ...

Динамически созданная форма без системного меню
форма создана динамически ,нужно чтобы она была выведена без кнопок &quot;свернуть&quot;,&quot;развернуть&quot; и...

Не работает кнопка, созданная программно
Всем привет. Недавно начал изучать javascript. Работаю c API Яндекс Карт. Они пользуются...

Почему кнопка созданная в рантайм уничтожается с ошибкой?
Добрый день. Подскажите, пожалуйста, почему, если я нажимаю на Button2 она молча удаляется, а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.