使用原生JS实现火锅点餐小程序(面向对象思想)

网友投稿 244 2023-11-09

本次小程序采用ES6开发标准,不会的宝宝们请先学习,再来观看吧!

使用原生JS实现火锅点餐小程序(面向对象思想)

使用条件:使用ES6标准开发;因为采用了Bootstrap在线,所以需要联网;VSCode开发工具,在本地服务器中打开。

 代码展示:

Demo.html(网页),Demo.css(样式),Test01.js(菜单类),Test02.js(循环菜单),Test03.js(增,删操作)

 下面进行一一展示:

 Demo.html(网页):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link href="https://cdn.jsdelivr-/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="Demo.css" rel="external nofollow" >
<script type="text/javascript" src="Test03.js"></script>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-6">
<table id=table1 class="table table-bordered table-striped">
<tr>
<td>名称</td>
<td>价格</td>
<td>图片</td>
<td>操作</td>
</tr>
<tbody id = tbody></tbody>
</table>
</div>
<div class="col-md-6">
<table id=table2 class="table table-bordered" style="background-color:burlywood;">
<tr>
<td>名称</td>
<td>价格</td>
<td>数量</td>
<td>操作</td>
</tr>
<tbody id="tbody1"></tbody>
</table>
</div>
</div>
</div>
<script type="module">
import {db_foot} from ./Test02.js;
let contents = [];
window.onload = function(){
for(const foots of db_foot()){
contents.push(`
<tr>
<td>${foots.name}</td>
<td>${foots.price}</td>
<td>${foots.pic}</td>
<td><button value="${foots.name}" money="${foots.price}" class="btn btn-sm btn-info" οnclick="sss(this)">加入菜单</button></td>
</tr>
`);
document.getElementById(tbody).innerHTML = contents.join("");
};
};
</script>
</body>
</html>

Demo.css(样式):

?
1
2
3
4
5
6
7
8
*{margin: 0;padding: 0;}
tr,td{
text-align:center;
line-height: 20px;
}
td{
vertical-align: middle;
}

Test01.js(菜单类):

Test02.js(循环菜单):

?
1
2
3
4
5
6
7
8
9
import Person from ./Test01.js;
export function db_foot(){
let foots = new Array();
foots.push(new Person(鱼香肉丝,100,));
foots.push(new Person(宫保鸡丁,200,));
foots.push(new Person(菠萝吹雪,300,));
return foots;
}

Test03.js(增,删操作):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
let contents = [];
function sss(e){
var flag = true;
var zhi = e.getAttribute("value");
var num = e.getAttribute("money");
var arr_tr =document.getElementById("table2").getElementsByTagName("tr");
let i;
for(i=0 ; i<arr_tr.length ; i++){
var td = arr_tr[i].firstElementChild.innerHTML;
//重复点菜,修改数量和金钱
if(td == zhi){
flag = false;
//个数
var count = arr_tr[i].firstElementChild.nextElementSibling.nextElementSibling;
var sum = count.innerHTML = parseFloat(count.innerHTML) + 1;
//金钱数
var qian = arr_tr[i].firstElementChild.nextElementSibling.innerHTML = sum * num;
break;
}
}
if(flag){
let tbody1 = document.getElementById("tbody1");
var tr = document.createElement("tr");
//名称
var td1 = document.createElement("td");
td1.innerHTML = `${zhi}`;
//价钱
var td2 = document.createElement("td");
td2.innerHTML = `${num}`;
//数量
var td3 = document.createElement("td");
td3.innerHTML = `1`;
//操作
var td4 = document.createElement("td");
td4.innerHTML = `<button class="btn btn-sm btn-warning" οnclick=shanchu(this)>删除</button>`;
//插入
tr.appendChild(td1);
tr.appendChild(td2);
tr.appendChild(td3);
tr.appendChild(td4);
tbody1.appendChild(tr);
}
}
//删除
function shanchu(obj){
obj.parentNode.parentNode.parentNode.removeChild(obj.parentNode.parentNode);
}

总结

以上所述是小编给大家介绍的使用原生JS实现火锅点餐小程序(面向对象思想),希望对大家有所帮助,

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
您可能感兴趣的文章:JS实现点餐自动选择框(案例分析)原生js实现随机点餐效果Javascript 模拟mvc实现点餐程序案例详解

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信小程序 LOL 英雄介绍开发实例
下一篇:微信小程序 (一)新建项目hello WeApp 详细介绍
相关文章

 发表评论

暂时没有评论,来抢沙发吧~