Javascript购物车的效果可以在许多地方使用。

javascript实现了购物车的效果,当然,这种效果可以应用到很多地方,比如朋友选择、人力资源模块、工资计算、人员选择等。
代码:

GoodsCar.js:这个JS写一个单独的文件。它主要是控制上面的列表。
复制代码代码如下所示:
窗口。指针函数(){
InitStore();
};
var
为什么 / / ==================定义一个临时存储区要明确哦
VaR的临时工= {}; / /临时存储
初始化仓库选择添加内容
功能initstore(){
无功select_store = document.getelementbyid(select_store );
对于(var x = 0;x<goods.length;X + +)
{
创建一个选项对象
无功optionnode = document.createelement(选项);
OptionNode。innerHTML =货物{X};
select_store.appendchild(optionnode);
}
}
/ / ------------------------------------
功能selectgoods(){
存储选择一个对象列表
无功out_store = document.getelementbyid(select_store );
我得到货物/选择对象列表。
无功in_store = document.getelementbyid(select_my );
MoveGoods(in_store,out_store);
}
功能deletegoods(){
1。记录移动的产品
无功in_store = document.getelementbyid(select_store );
无功out_store = document.getelementbyid(select_my );
MoveGoods(in_store,out_store);
}
*
*流动货物:
1.insotre:搬货物进仓
2.outstore:将货物从仓库
* /
莫比尔
功能movegoods(店内,outstore){
/ / ===============清空数组缓存阻塞
临时工= { };
循环获取存储中的所有列表项。
对于(var x = 0;x<outstore.options.length;X + +)
{
期权= outstore选项{X};
将为添加到数组临时存储项中的项目列表进行选择。
如果(选择的){
Temps.push(选项); / /添加一个临时数据阵列中,为了避免重复,清空缓存阵列
}
}
2。删除存储列表中选定的项。
3。将选定的产品添加到购物车中
对于(var x = 0;x<temps.length;X + +)
{
每个节点只有一个父节点。
删除添加
outstore.removechild(贴面{X});
添加
instore.appendchild(贴面{X});
}
}

以下是主文件;
复制代码代码如下所示:




在这里插入标题

表{
边境:10px;
}
选择{
宽度:200px;
身高:400px;
}
# order_area {
显示:无;
}



无功selectedgoods = {}; / /缓存区
根据购物车的生成顺序
功能createorder(){
显示顺序区域
无功orderareadiv = document.getelementbyid(order_area );
在div对象下,有一个成员对象样式,它可以通过这个样式对象控制div的样式。
显示:指示对象或称为div的元素是否在文档中呈现。
可利用的价值:
块:对象呈现为块元素。
无:对象未呈现。

在这种情况下,上述两个值是OK的,包含文档中的内容。
* /
具有节点对象操作类型的属性
orderareadiv。风格。显示为块;
无功select_my = document.getelementbyid(select_my );
对于(var x = 0;x<select_my.options.length;x++){

无功optnode = select_my选项{X};
SelectedGoods.push(optnode .innerHTML);
}
遍历产品,生成订单
对于(var x = 0;x<selectedgoods.length;x++){
*动态生成的数据模板

20元/英俊


无功divnode = document.createelement(div);
orderareadiv.appendchild(divnode);
无功inputmyorder = document.createelement(输入);
inputmyorder.setattribute(类型
inputmyorder.setattribute(名
divnode.appendchild(inputmyorder);
无功spannode = document.createelement(跨越);
随机生成50到100个随机数
无功价格= math.floor(Math.random)*(50 + 50);
inputmyorder价值=价格;
SpanNode。innerHTML = selectedgoods {X} ++价格;
divnode.appendchild(spannode);
/ / inputmyorder.appendchild(spannode);错误,因为跨度和投入水平是相同的元素

/ /学生组装divnode添加到排行榜
无功order_list = document.getelementbyid(order_list );
order_list.appendchild(divnode);
}
}
*
*仍然可以在再生订单中选择哪些订单,准备付款,然后付款。
三个选项:选择:1,不要选择:0,复选框:2;反功能可以选择自己的。
* /
功能myselect(arg){
/ / getelementsbyname:获取对象的集合基于名字的标签属性的值。
VaR的订单= document.getelementsbyname(我的命令);
在编写代码的过程中对单词的使用不当
/ / getElementsByTagName:基于指定元素的名称到对象的集合。
/ / var命令= document.getelementsbytagname(我的命令);
对于(var x = 0;x<orders.length;x++){
var订单=订单{ };
如果(= 1 ){
为了检查=真;
}
否则如果(= 0 ){
订单,检查=假;
}
否则如果(= 2 ){
订单,检查=!order.checked;
}
}
}
检查付款,它使用所有的货物数量的对话演示文稿。
功能paymoney(){
VaR的订单= document.getelementsbyname(我的命令);
价格
var总和= 0;
对于(var x = 0;x<orders.length;x++){
var订单=订单{ };
如果(订单。检查){
当然买。
总和=和数(顺序,值);
}
}

警报(如果你想付款+ +元);
}












>onclick=>(selectgoods);












请选择您想要购买的产品:


20元
-->