Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
3 / 3 / 0
Регистрация: 23.01.2014
Сообщений: 28

Не работает change()

03.10.2014, 01:41. Показов 2765. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Написал вот такую форму:
HTML5
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<div class="wrapper">
<form action="index.php" method="post">
<label>Имя</label>
<input type="text" placeholder="Введите ваше имя..." name="name" />
<br/>
<label>Номер телефона</label>
<input type="text" placeholder="Введите ваш телефон..." name="number" />
 <br/>
<label>Город</label>
 <input type="text" placeholder="Введите ваш город..." name="city" />
<br/>
<label>Выберите продукт который хотите заказать:</label>
 <br/>
<fieldset>
<label for="choices">
<ul class="checklist">
<li>
<input name="jqdemo" value="v1" type="checkbox" />
<img src="img/BordyrClassic.png" /><br/>
<p class="name none">Бордюр Класический</p>
<p class="descr none">Форма Бордюр классический, 50х20х4,5 см</p>
<p class="price none">35</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v2" type="checkbox" />
<img src="img/BordyrStone.png" /><br/>
<p class="name none">Бордюрный Камень</p>
<p class="descr none">Форма Бордюрный камень, 30х19х7 см</p>
<p class="price none">35</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v3" type="checkbox" />
<img src="img/Gidrofobizator.png" /><br/>
<p class="name none">Гидрофобизатор</p>
<p class="descr none">Гидрофобизатор, 600г</p>
<p class="price none">50</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v4" type="checkbox" />
<img src="img/CircleStone.png" /><br/>
<p class="name none">Круговой Камень</p>
<p class="descr none">Форма Круглые камни, 80х80х6 см</p>
<p class="price none">150</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v5" type="checkbox" />
<img src="img/Livnevka.png" /><br/>
<p class="name none">Ливневка</p>
<p class="descr none">Форма для водостока Ливневка, 34х16х6 см</p>
<p class="price none">25</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<br/>
<div class="clr"></div>
<br/>
<li>
<input name="jqdemo" value="v6" type="checkbox" />
<img src="img/Pigment.png" /><br/>
<p class="name none">Пигмент</p>
<p class="descr none">Пигмент для бетона, 750 г</p>
<p class="price none">35</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v7" type="checkbox" />
<img src="img/Plastificator.png" /><br/>
<p class="name none">Пластификатор</p>
<p class="descr none">Пластификатор, 800 г</p>
<p class="price none">30</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v8" type="checkbox" />
<img src="img/GardenRoad.png" /><br/>
<p class="name none">Садовая дорожка </p>
<p class="descr none">Форма Садовая дорожка, 60х60х6 см</p>
<p class="price none">90</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v9" type="checkbox" />
<img src="img/SmazkaDlaForm.png" /><br/>
<p class="name none">Смазка для форм</p>
<p class="descr none">Смазка для форм и опалубки, 200 мл</p>
<p class="price none">18</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
<li>
<input name="jqdemo" value="v10" type="checkbox" />
<img src="img/Fibrovolokno.png" /><br/>
<p class="name none">Фиброволокно</p>
<p class="descr none">Армирующее фиброволокно, 600г</p>
<p class="price none">50</p>
<a class="checkbox-select" href="#">Выбрать</a>
<a class="checkbox-deselect" href="#">Отмена</a>
</li>
</ul>
</label>
<div class="clr"></div>
<div class="order">
<table id="orderTable">
</table>
</div>
</fieldset>
</form>
</div>
Стили:
CSS
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
.clr {
    clear: both;
}
fieldset {
    border: 0;
}
.checklist {
    list-style: none;
    margin: 0;
    padding: 0;
}
.checklist li {
    float: left;
    margin-right: 10px;
    background: url("../img/checkboxbg.gif") no-repeat 0 0;
    width: 105px;
    height: 150px;
    position: relative;
    font: normal 11px/1.3 "Lucida Grande","Lucida","Arial",Sans-serif;
}
.checklist li.selected {
    background-position: -105px 0;
}
.checklist li.selected .checkbox-select {
    display: none;
}
.checklist img {
    width: 80px;
    height: 80px;
    margin: 10px;
}
.checkbox-select {
    display: block;
    float: left;
    position: absolute;
    top: 118px;
    left: 10px;
    width: 85px;
    height: 23px;
    background: url("../img/select.png") no-repeat 0 0;    
    color: white;
    font-weight: bold;
    text-decoration: none;
    padding: 2px 12px;
    font-size: 14px;
}
.checklist li input {
    display: none;  
}
a.checkbox-deselect {
    display: none;
    color: white;
    font-weight: bold;
    text-decoration: none;
    position: absolute;
    top: 120px;
    right: 10px;
}
.checklist li.selected a.checkbox-deselect {
    display: block;
}
.checklist li p {
    text-align: center;
    padding: 8px;
}
.sendit {
    display: block;
    float: left;
    top: 118px;
    left: 10px;
    width: 115px;
    height: 34px;
    border: 0;
    cursor: pointer;
    background: url("../img/sendit.png") no-repeat 0 0;
    margin: 20px 0;
    color: white;
    font-weight: bold;
    text-decoration: none;
    padding: 2px 12px;
    font-size: 14px;
}
#orderTable img {
    width: 100px;
    height: 100px;
}
.ololo {
    position: absolute;
    z-index: 999;
    width: 400px;
    height: 300px;
    border: 1px solid #eeeeee;
    right: 20px;
    top: 95px;
    background-color: #eeeeee;
    border-radius: 15px;
}
.wrapper {
    width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
 
.checklist p {
    text-indent: 9999px;
}
.none {
    display: none;
}
.ololo p {
    text-indent: 0 !important;
    padding: 15px;
}
.ololo .name {
    font-size: 20px;
    color:#000000;
    font-weight: bold;
    text-align: center;
}
.ololo .descr {
    color:#000000;
}
.ololo .price {
    color:red;
    text-align: right;
    font-size: 18px;
}
.order {
    margin-top: 15px;
}
.order table {
    border-collapse: collapse;
}
.order table tr {
    border: 1px solid #b4b4b4;
}
.order table tr td {
    border-left: 1px solid #b4b4b4;
    padding: 15px;
}
.order table tr td input {
    width: 30px;
    height: 30px;
    padding: 3px;
}
.order table tr td input:focus {
    outline: none;
}
и скрипт(chekbox и всякие функции):
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
45
46
47
48
49
50
51
52
53
54
55
56
$(document).ready(function() {
var cls;
var img;
var name;
var descr;
var price;
$(".checklist .checkbox-select").click(function(event) {
event.preventDefault();
$(this).parent().addClass("selected");
$(this).parent().find(":checkbox").attr("checked","checked");
cls = $(this).parent().find(":checkbox").val();
img = $(this).parent().find("img").attr("src");
                    
name = $(this).parent().find("p.name").text();
descr = $(this).parent().find("p.descr").text();
price = $(this).parent().find("p.price").text();
                    
$("#orderTable").append("<tr class="+cls+"><td><img src="+img+" /></td>\n\
                        <td>"+name+"</td><td><input class='priceInput' type='text' value='1' /></td><td class=\"priceForm\"><span>"+price+"</span>грн</td></tr>");
        });
$(".checklist .checkbox-deselect").click(function(event) {
event.preventDefault();
$(this).parent().removeClass("selected");
$(this).parent().find(":checkbox").removeAttr("checked");
cls = $(this).parent().find(":checkbox").val();
$("."+cls).remove();
});
$(".checklist img").mouseover(function (){
name = $(this).parent().find("p.name").text();
descr = $(this).parent().find("p.descr").text();
price = $(this).parent().find("p.price").text();
$(".checklist").append("<div class=\"ololo\"><p class=\"name\">"+name+"</p>\n\
        <p class=\"descr\">"+descr+"</p><p class=\"price\">Цена: "+price+"грн</p></div>");
});
                
$(".checklist img").mouseout(function (){
   $(".ololo").remove();
});
                
var count;
var priceForm;
var priceFormMn;
var priceFormSumm;
$("td input.priceInput").change(function (){
                    alert("111");
                });
                /*$(".priceInput").change(function() {
                    count = parseInt($(this).val());
                    priceForm = parseInt($(this).parent().find(".priceForm span").text());
                    priceFormMn = count * priceForm;
                    alert(count);
                    alert(priceForm);
                    $("td.priceForm").replaceWith("<td class=\"priceForm\"><span>"+priceFormMn+"</span>грн</td>");
                    alert("111");
                });*/
            });
Здесь и здесь не работает .change(). по разному пробывал не получаеться ( Помогите пожалуйста.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
 $("td input.priceInput").change(function (){
                    alert("111");
                });
                /*$(".priceInput").change(function() {
                    count = parseInt($(this).val());
                    priceForm = parseInt($(this).parent().find(".priceForm span").text());
                    priceFormMn = count * priceForm;
                    alert(count);
                    alert(priceForm);
                    $("td.priceForm").replaceWith("<td class=\"priceForm\"><span>"+priceFormMn+"</span>грн</td>");
                    alert("111");
                });*/
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.10.2014, 01:41
Ответы с готовыми решениями:

Событие change
подскажите, у каких элементов оно может быть? например если я изменяю содержимое span-а ajax-ом, в этом случае срабатывает событие...

Change color value
Господа будьте добры подскажите нубу что не так. Хочу изменить цвет текста в input таким вот образом. В случае неправильно введенной цифры,...

Не срабатывает .change
Сделал форму для расчета стоимости услуги, но стоимость услуги не рассчитывается при изменении значения (ий) элементов формы. Как лучше...

2
работяга
368 / 368 / 52
Регистрация: 23.05.2010
Сообщений: 947
03.10.2014, 07:31
Не работает, потому что у вас изначально нет элемента .priceInput на странице. Он появляется после клика по чекбоксу. Поэтому вам нужно использовать делегированную обработку событий
JavaScript
1
2
3
$('#orderTable').on('change', 'td input.priceInput', function () {
    alert('111');
});
1
3 / 3 / 0
Регистрация: 23.01.2014
Сообщений: 28
03.10.2014, 10:58  [ТС]
Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.10.2014, 10:58
Помогаю со студенческими работами здесь

Не отрабатывает событие Change
Не отрабатывает событие $('#myID').change(function() { alert('!!!'); }); Пробовал и через класс обратиться ...

change неудаляет кукисы
Здравствуйте! Скажите пожалуйста так и должно быть что функция change неудаляет кукисы? $(function() { ...

ChangeBox событие change
Здравствуйте! Помогите разобраться. Есть несколько чекбоксов, есть вот такой код: function Init() { var inputs = new Array(); ...

JQuery, событие change!?
как сделать чтоб при событии change элемента кнопка принимала значение disabled? листинг: &lt;INPUT TYPE=&quot;text&quot;...

Change BackgroundColor по ID div
Добрый день! Есть код &lt;header&gt; &lt;div id=&quot;h0&quot;&gt;10&lt;/div&gt; &lt;div id=&quot;h1&quot;&gt;11&lt;/div&gt; &lt;div id=&quot;h2&quot;&gt;12&lt;/div&gt; &lt;div...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru