Цитата:
Тем самым на выходе кода буду иметь уже готовые разные id с номерами... хм.. а потом уже только с ними и работать. Тогда и определять никаких родителей не надо :) Правильно? :dance: Или я уже сам себя перехитрить пытаюсь? |
Цитата:
НО! Описанный вами метод не работает, а именно скрипт пишет уже в самом начале в var product_id пустоту! Поэтому и не работает дальше... Что в строке var product_id = this.id; не так?? |
Цитата:
<!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-latest.js"></script> <!-- <script src="http://code.jquery.com/jquery-latest.js"></script> <link rel="stylesheet" type="text/css" href="tmp.css" /> --> <style type="text/css"> </style> <script type="text/javascript"> $(function (){ $('.check').click(function (){ var o=this.parentNode.parentNode; var sum=$(o).find('.tovar-price > span').text(); var n=$(o).find('.numbers > input').val(); alert(sum*n); }); }); </script> </head> <body> <div class="tovar" id="41"> <div class="tovar-image"> <img src="/img/b/f1.jpg"> </div> <div class="tovar-name"> Патрик<br> </div> <div class="tovar-inside-and-size"> (гелий, 80х60 см) </div> <div class="tovar-price"> <span>280</span> руб/шт </div> <div class="numbers"> <span class="minus">-</span> <input id="41" type="text" value="1" size="3"> <span class="plus">+</span> <span class="check">=</span> </div> </div> </body> </html> |
Цитата:
Прошу прощения за кривость html, но это чтоб быстрее показать что ВСЁ РАБОТАЕТ! )))) Спасибище! http://jsfiddle.net/Mv6u6/4/ ps. Два дня изучаю яву+jq и это что-то с чем-то я скажу Вам, когда после нескольких часов получаешь рабочий код.... )))) да вы и сами наверное знаете )) |
this.parentNode.parentNode - это не совсем правильный путь. Он жестко привязывает код к верстке. Логичнее было бы наоборот идти сверху вниз - сначала собрать в массив товар, а затем навешивать калькуляторы на каждый.
Цитата:
|
В качестве бонуса можно попросить допилить немного код
http://jsfiddle.net/Mv6u6/4/ на проверку чтобы в input не было левых символов (буквы, отрицательные итп) только числа от 1 до 999. В противном случае возвращалась бы ошибка строкой. ??? Можно конечно отправить меня читать основы... как вариант )))) |
Цитата:
http://jsfiddle.net/Mv6u6/4/ Спасибо!!! |
Цитата:
Работает до первого редизайна, а затем верстальщику придется искать, почему перестало работать |
Допилил код на проверку данных в input (переменная n количество товара) - должна быть только целым числом >= 1.
Вот код: http://jsfiddle.net/Mv6u6/5/ Последний вопрос - всё ли я учел? Или есть вариант более корректный? |
Цитата:
|
Часовой пояс GMT +3, время: 11:19. |