|
kolobok ↓
|
 |
|
31 Август, 2010, 02:05:58
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 45 Сила слова: 0
|
Есть итоговая корзина с товарами, список, напротив каждой позиции ссылка "удалить товар". Скрипт по моему мнению должен работать так: Если щелкнули по какой то ссылке, то скрипт берет значение id товара и кол-во этого товара, после чего передает эти параметры скрипту допустим delBasket.php, который в свою очередь обновляет таблицу в базе и получает новую сумму заказа. После чего тот самый jquery скрипт делает hide диву который мы удалили и обновляет сумму заказа.
Так вот вопрос, как этому скрипту считать данные id и кол-во товара и потом захайдить див?
Т.е например:
$.ajax({
type: "POST",
url: "delBasket.php",
data: "id="+$(".divBasket :input").val(), - Я про последнюю строчку, ведь у меня весь список имеет один и тот же класс.
PS: Или я вообще не тем путем иду?
|
|
|
|
|
Записан
|
|
|
|
|
Chiffa ↓
|
 |
|
31 Август, 2010, 02:20:55 , спустя 14 минут 57 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Джедаи Карма: 21
Сообщений: 511 Сила слова: 4.11
|
во-первых есть готовая функция $.post, как по мне она удобней
$.post('delBasket.php', {id: $(".divBasket :input").val()}, function(){//спрятали див, обновили сумму});
а id товара можно передать кучей способов, самый простой (первый пришедший в голову) зашить его в id ссылки которая "delete item"
|
|
|
|
|
Записан
|
Иногда решительный шаг вперед - следствие ощутимого пинка под зад... ALL code is ugly. Yours, mine, everyone's. Code Is Ugly. Just face it.
|
|
|
|
kolobok ↓
|
 |
|
31 Август, 2010, 02:44:51 , спустя 23 минуты 56 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 45 Сила слова: 0
|
Я только разбираюсь с jquery, яваскрипт подавно не знаю... Вроде как .ajax самый полный метод который включает в себя и пост и гет. Просто на нем пример похожий попался поэтому его и использую.
id допустим зашью в ссылку, при убирании дива понимаю, что можно будет найти див, составив конструкцию типа ..contains(id=), а как активировать скрипт .ajax чтобы он при этом из нужного дива захватил параметры?
|
|
|
|
|
Записан
|
|
|
|
|
Chiffa ↓
|
 |
|
31 Август, 2010, 02:52:40 , спустя 7 минут 49 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Джедаи Карма: 21
Сообщений: 511 Сила слова: 4.11
|
ну вот можно извратиться как-то так... попробуйте адаптировать под себя
<div id="basketItem_1">Хренотень Улучшенная <span class="count">3 </span> шт. <a href="" id="1" class="deleteMe">Удалить </a></div>
$('a.deleteMe').click(function(){
$getJSON(
'delBasket.php',
{id: $(this).attr('id'), count: $('#basketItem_'+$(this).attr('id')+' .count').text()},
function(data){
/*спрятали див basketItem_+data.id
подставили в сумму data.newSum
*/
});
});
конечный скрипт будет сильно зависеть от вашей верстки. почитайте про селекторы в jquery там можно достать почти всё почти отовсюду :)
|
|
|
|
|
Записан
|
Иногда решительный шаг вперед - следствие ощутимого пинка под зад... ALL code is ugly. Yours, mine, everyone's. Code Is Ugly. Just face it.
|
|
|
|
Stasovsky ↓
|
 |
|
31 Август, 2010, 03:12:44 , спустя 20 минут 4 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Сенсей XD
Группа: Джедаи Карма: 54
Сообщений: 3654 Сила слова: 1.48
|
мб лучше так - count: $(this).find('.count').text()
|
|
|
|
|
Записан
|
|
|
|
|
Sinkler ↓
|
 |
|
31 Август, 2010, 03:14:46 , спустя 2 минуты 2 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Похуй, пляшем!
Группа: Джедаи Карма: 73
Сообщений: 6811 Сила слова: 1.07
|
когда делаешь что-то в базе - надо всегда знать, выполнено ли это что-то или нет. например, если товар удален из корзины - то только тогда удалять из списка на странице. если нет - сообщить юзверю, мол, облом.
|
|
|
|
|
Записан
|
|
|
|
|
Stasovsky ↓
|
 |
|
31 Август, 2010, 03:16:37 , спустя 1 минуту 51 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
Сенсей XD
Группа: Джедаи Карма: 54
Сообщений: 3654 Сила слова: 1.48
|
ой-ой)) чет не дописал))
count: $(this).parent().find('.count').text()
|
|
|
|
|
Записан
|
|
|
|
|
Chiffa ↓
|
 |
|
31 Август, 2010, 03:35:08 , спустя 18 минут 31 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Джедаи Карма: 21
Сообщений: 511 Сила слова: 4.11
|
мб лучше так - count: $(this).find('.count').text()
тоже вариант.. может даже надежней будет))
|
|
|
|
|
Записан
|
Иногда решительный шаг вперед - следствие ощутимого пинка под зад... ALL code is ugly. Yours, mine, everyone's. Code Is Ugly. Just face it.
|
|
|
|
Абырвалг ↓
|
 |
|
31 Август, 2010, 04:15:56 , спустя 40 минут 48 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
PHP Infected, симфоеб, маконенавистник
Группа: Джедаи Карма: 80
Сообщений: 6096 Сила слова: 1.31
|
оспади исусе, что с вами?
$('.count', this).text(); Спустя 1 минуту 12 секунд добавил http://brandonaaron.net/blog/2009/06/24/understanding-the-context-in-jquery
|
|
|
|
|
Записан
|
PHP does the job since 1995 Пожалуйста, не надо делать двойные клики по ссылкам. Это создает избыточную нагрузку на сервер
|
|
|
|
Chiffa ↓
|
 |
|
31 Август, 2010, 04:20:42 , спустя 4 минуты 46 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Джедаи Карма: 21
Сообщений: 511 Сила слова: 4.11
|
Абырвалг, йопт, точна!
|
|
|
|
|
Записан
|
Иногда решительный шаг вперед - следствие ощутимого пинка под зад... ALL code is ugly. Yours, mine, everyone's. Code Is Ugly. Just face it.
|
|
|
|
phpdude ↓
|
 |
|
31 Август, 2010, 04:22:32 , спустя 1 минуту 50 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
я - ЭМО
Группа: в ухо Карма: 345
Сообщений: 20793 Сила слова: 1.66
|
bots
|
|
|
|
|
Записан
|
забанен. могу забанить других, пишите в личку BEER. Helping ugly people have sex since 1862.
|
|
|
|
kolobok ↓
|
 |
|
02 Сентябрь, 2010, 12:53:31 , спустя 1 день 20 часов 30 минут 59 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 45 Сила слова: 0
|
Потестил все варианты. Вариант Chiffa и Stasovsky работает, вариант Абырвалг'а - нифига.
<script type = "text/javascript">
$('a.deleteMe').click(function(){
//работает
//var msg = $('#basketItem_'+$(this).attr('id')+' .count').text();
//тоже работает
//var msg = $(this).parent().find('.count').text();
//не работает
//var msg = $('.count', this).text();
alert(msg);
});
|
|
|
|
|
Записан
|
|
|
|
|
Абырвалг ↓
|
 |
|
02 Сентябрь, 2010, 01:05:12 , спустя 11 минут 41 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
PHP Infected, симфоеб, маконенавистник
Группа: Джедаи Карма: 80
Сообщений: 6096 Сила слова: 1.31
|
попробуй this в $() обернуть
|
|
|
|
|
Записан
|
PHP does the job since 1995 Пожалуйста, не надо делать двойные клики по ссылкам. Это создает избыточную нагрузку на сервер
|
|
|
|
kolobok ↓
|
 |
|
02 Сентябрь, 2010, 01:24:00 , спустя 18 минут 48 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 45 Сила слова: 0
|
Не помогло, вот так сработало $('.count', $(this).parent()).text();
|
|
|
|
|
Записан
|
|
|
|
|
Stasovsky ↓
|
 |
|
02 Сентябрь, 2010, 03:14:19 , спустя 1 час 50 минут 19 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Сенсей XD
Группа: Джедаи Карма: 54
Сообщений: 3654 Сила слова: 1.48
|
по примеру Главрыба надо так
var parent = $(this).parent();
$('.count', parent).text();
ну по крайней мере у меня все норм...
|
|
|
|
|
Записан
|
|
|
|
|