我正在寻找一些能够:
的Javascript(*安全性将由后端PHP处理。我在过去三天尝试了这一点,但显然我的代码非常糟糕,我觉得再次在此重新发布它感到羞耻)
我的想法:
- 创建购物车对象
- 创建一个函数,重新计算发生的任何变化的总数
(考虑到javascript只是将它传递给PHP脚本进行检查,我想不出任何其他需要的东西)
有没有人知道一些javascript可以完成我所寻求的工作?我的想法是否正确?
答案 0 :(得分:2)
下面是使用显示模块模式构建的示例购物车javascript对象。
var shoppingCart = function () {
var obj = {}, items = [];
obj.AddItem = function (itemNo, quantity, price) {
var item = {};
item.itemNo = itemNo;
item.quantity = quantity;
item.price = price;
items.push(item)
};
obj.GetAllItems = function () {
return items;
};
obj.GetItemByNo = function (item) {
for (var i = 0; i < items.length; i++) {
if (items[i].itemNo === item)
return item[i];
}
return null;
};
obj.CalculateTotal = function () {
var total = 0;
for (var i = 0; i < items.length; i++) {
total = total + (items[i].quantity * items[i].price);
}
return total;
};
return obj;
};
var cart = new shoppingCart();
使用AddItem方法添加项目,包括在UI中有用的其他属性。
shoppingcart.AddItem(2,4,2.4);
获取购物车中的商品列表
var items = shoppingcart.GetAllItems();
计算购物车中商品的总价
var total = shoppingcart.CalculateTotal();
请注意,我在这里输入了此代码,因此可能包含拼写错误,并且我建议在添加项目之前将价格和数量的数据类型验证作为数字。