Эдди,
вы упорно хотите сменить колёса на ходу машины, не получится. Цитата:
|
Если надо, могу сделать примеры на jquery, где при использовании класса действие выполняется многократно, если имеем дело с input, и где выполняется однократно (корректно), когда вместо инпута ставим <a>.
|
Эдди,
function servn(n) {
var x = document.getElementById('serv_c' + n).innerHTML; //взяли число
var y = document.getElementById('serv_n' + n).value;
z = x * y;
document.getElementById('serv_c' + n).innerHTML = z;//уничтожили при любом вводе
}
|
Цитата:
Клиент смотрит. Сверяет цифры. Может 150 раз менять, смотреть результат. Когда его все устраивает, он кликает на корзине и кладет в нее основные услуги вместе с дополнительными. Да, и я решил не писать в БД, а в сессию сначала, до подтверждения, как и советовали. |
Эдди,
сделайте хотя-бы так <td id="serv_c0" data-num="10">10</td> и берите число из dataset |
Цитата:
Да. Уничтожил и заменил на новое число в зависимости от количества человек, которые воспользуются услугами. Или я чего-то не понимаю? Но это то, что мне нужно. |
Цитата:
|
Эдди,
как можно ввести количество и не потерять 10 при вашем коде |
~~~УДАЛИЛ~~~
|
Цитата:
Блн, снова копать, искать инфу про dataset. :) |
Цитата:
|
Эдди,
:) ок |
Спасибо.
А оставить на js в том же файле внизу, где все на jquery это нормально? (извините за дебильные вопросы, я ведь в JS уже профессор. знаю аж 1,5%) :) |
function servn(n) {
//Получаем элемент
var el = document.getElementById('serv_c' + n);
//Получаем значение атрибута data
var dat = el.getAttribute('data-num');
//Берем вводимое значение
var num = document.getElementById('serv_n' + n).value;
//Умножаем
var res = num * dat;
//Присваиваем полученное значение ячейке таблицы
document.getElementById('serv_c' + n).innerHTML = res;
}
|
Эдди,
function servn(n) {
//Получаем элемент
var el = document.getElementById('serv_c' + n);
//Получаем значение атрибута data
var dat = el.dataset.num;
//Берем вводимое значение
var num = +document.getElementById('serv_n' + n).value||0;
//Умножаем
var res = num * dat;
//Присваиваем полученное значение ячейке таблицы
el.innerHTML = res;
}
|
Спасибо
|
Цитата:
|
Благодарю рони за то, что научил пользоваться dataset.
Только у меня в одной ячейке стоит сумма на одного человека, а в соседней сумма, перемноженная на кол-во человек. То есть первоначальная сумма остается неизменной. Но я так замучался с этой простой проблемой и упростил ее до двух ячеек, что уже сам не понимал, что делаю.. По-любому я научился новому способу, который 100% пригодится. Тема закрыта. Спасибо еще раз! |
| Часовой пояс GMT +3, время: 11:15. |