Текущее время: 04 май 2025, 12:20
Разговоры о компьютерах и все что с ними связано, о всех видах телефонов, как со шнурочками, так и без
Модераторы: TR#ll, Модераторы
noa » 21 сен 2008, 14:48
поможите плиз.
есть простая функция, которая тупо перемножает количество на цену (цену тоже запрашивает в input).
а как сделать, чтобы цена менялась в зависимости от кличества?
например qty <=5 then price=2
qty 6-15 --- price=1.5
qty >15 ...
как бы не совсем синтаксис яваскрипта знаю
- Код: Выделить всё
function recalc(){
$("[@id^=total_item]").calc(
"qty * price",
{
qty: $("input[@name^=qty_item_]"),
price: $("[@id^=price_item_]")
},
function (s){
return s.toFixed(2);
},
function ($this){
var sum = $this.sum();
$("#grandTotal").text(
sum.toFixed(2)
);
}
);
}
-
- noa

- Сержант

-
- Возраст: 39
- Стаж: 18 лет 5 дней
- Сообщения: 62
- Откуда: Челябинск
- Имя: Андрей
- Автомобиль: BMW X3
-
noa » 21 сен 2008, 14:59
не, даже не протестировав, вижу что не так.
во-первых:
if(qty < 5){
price =2;
}else if(qty<15){
price =1.5;
цифра 3 подходит под оба эти выражения: она меньше 5 и меньше 15 - интепретатор моск себе сломает, выбирая какую цену всё-такип поставить.
а, во-вторых, в самой функции никак не учитываются эти условия
qty: $("input[@name^=qty_item_]"),
price: $("[@id^=price_item_]")
как бы вот ещё что надо доработать
-
- noa

- Сержант

-
- Возраст: 39
- Стаж: 18 лет 5 дней
- Сообщения: 62
- Откуда: Челябинск
- Имя: Андрей
- Автомобиль: BMW X3
-
noa » 22 сен 2008, 18:29
sbs писал(а):- Код: Выделить всё
[size=50]
function recalc(){
if(qty < 5){
kprice =1;
}else if(qty<15 && qty>=5){
kprice =0.75;
}else if(qty>=15){
kprice =0.5;
}
$("[@id^=total_item]").calc(
"qty * price * kprice",
{
qty: $("input[@name^=qty_item_]"),
price: $("[@id^=price_item_]")
},
function (s){
return s.toFixed(2);
},
function ($this){
var sum = $this.sum();
$("#grandTotal").text(
sum.toFixed(2)
);
}
);
}[/size]
Могет быть так?
ну может быть, тока синтаксис пока не подходит.
переменные задаются вот тут:
- Код: Выделить всё
// define the variables used in the equation, these can be a jQuery object
{
qty: $("input[@name^=qty_item_]"),
price: $("[@id^=price_item_]")
},
следовательно на твой пример выскакивает ошибка:
message: Statement on line 78: Undefined variable: qty
if(qty < 5){
-
- noa

- Сержант

-
- Возраст: 39
- Стаж: 18 лет 5 дней
- Сообщения: 62
- Откуда: Челябинск
- Имя: Андрей
- Автомобиль: BMW X3
-
Kykyzilla » 22 сен 2008, 20:09
noa писал(а):поможите плиз.
есть простая функция, которая тупо перемножает количество на цену (цену тоже запрашивает в input).
а как сделать, чтобы цена менялась в зависимости от кличества?
например qty <=5 then price=2
qty 6-15 --- price=1.5
qty >15 ...
как бы не совсем синтаксис яваскрипта знаю
[code] function recalc(){
$("[@id^=total_item]").calc(
"qty * price",
{
qty: $("input[@name^=qty_item_]"),
price: $("[@id^=price_item_]")
},
function (s){
return s.toFixed(2);
},
function ($this){
var sum = $this.sum();
$("#grandTotal").text(
sum.toFixed(2)
);
}
);
}
Чё только не приснится ночью . гы...
Дико извиняюсь за то что влез в тему не по теме
![Ну ка, побояню! :[|]:](./images/smilies/bayan.gif)
-
- Kykyzilla

- Майор

-
- Возраст: 42
- Стаж: 17 лет 4 месяца 4 дня
- Сообщения: 1763
- Откуда: Moscow
- Имя: Александро
- Автомобиль: ШевролёТ )))
- Поблагодарили: 61 раз.
- Награды: 1
-
-
noa » 23 сен 2008, 19:16
не-не-не. теперь пишет совсем
Expected token: ';'
price: $("[@id^=price_item_]")
значит надо закрывать выражение. вобщем кто правда силён в JavaScript
блин я приложу на всякий случай такой простенький калькулятор, в котором я и хочу сделать гибкую цену
http://city.is74.ru/forum/attachment.ph ... 1222000909
-
- noa

- Сержант

-
- Возраст: 39
- Стаж: 18 лет 5 дней
- Сообщения: 62
- Откуда: Челябинск
- Имя: Андрей
- Автомобиль: BMW X3
-
noa » 24 сен 2008, 19:18
ну любой браузер умеет.
у меня Opera - Инструменты -- Дополнительно -- Консоль ошибок
-
- noa

- Сержант

-
- Возраст: 39
- Стаж: 18 лет 5 дней
- Сообщения: 62
- Откуда: Челябинск
- Имя: Андрей
- Автомобиль: BMW X3
-
Вернуться в Всё о компьютерах и средствах связи
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7