Эдди,
вы упорно хотите сменить колёса на ходу машины, не получится. Цитата:
|
Если надо, могу сделать примеры на 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, время: 01:40. |