用html语言写一个餐厅营业的可视化代码

时间: 2023-12-14 22:03:13 浏览: 31
以下是一个简单的餐厅营业可视化代码,包括菜单和订单管理: ```html <!DOCTYPE html> <html> <head> <title>餐厅营业可视化</title> <style> body { font-family: Arial, sans-serif; margin: 0; padding: 0; } header { background-color: #333; color: #fff; padding: 20px; text-align: center; } section#menu { display: flex; flex-wrap: wrap; justify-content: center; padding: 20px; } section#menu div { background-color: #f2f2f2; border: 1px solid #ccc; border-radius: 5px; box-shadow: 2px 2px 5px #ccc; margin: 10px; padding: 10px; width: 200px; } section#cart { background-color: #f2f2f2; border: 1px solid #ccc; border-radius: 5px; box-shadow: 2px 2px 5px #ccc; margin: 20px auto; padding: 20px; max-width: 600px; } table { border-collapse: collapse; margin: 10px 0; width: 100%; } table th, table td { border: 1px solid #ccc; padding: 10px; text-align: center; } table th { background-color: #333; color: #fff; } button { background-color: #333; border: none; border-radius: 5px; color: #fff; cursor: pointer; padding: 10px 20px; transition: background-color 0.3s ease; } button:hover { background-color: #666; } </style> </head> <body> <header> <h1>餐厅营业可视化</h1> </header> <section id="menu"> <div> <h2>菜品1</h2> <p>价格:¥28</p> <button onclick="addToCart('菜品1', 28)">加入购物车</button> </div> <div> <h2>菜品2</h2> <p>价格:¥35</p> <button onclick="addToCart('菜品2', 35)">加入购物车</button> </div> <div> <h2>菜品3</h2> <p>价格:¥42</p> <button onclick="addToCart('菜品3', 42)">加入购物车</button> </div> <div> <h2>菜品4</h2> <p>价格:¥25</p> <button onclick="addToCart('菜品4', 25)">加入购物车</button> </div> </section> <section id="cart"> <h2>购物车</h2> <table> <thead> <tr> <th>菜品</th> <th>价格</th> <th>数量</th> <th>小计</th> <th></th> </tr> </thead> <tbody id="cartItems"> </tbody> <tfoot> <tr> <td colspan="3">总计</td> <td id="cartTotal">¥0</td> <td></td> </tr> </tfoot> </table> <button onclick="submitOrder()">提交订单</button> </section> <script> var cartItems = []; function addToCart(item, price) { var found = false; cartItems.forEach(function(cartItem) { if (cartItem.item === item) { cartItem.quantity++; found = true; } }); if (!found) { cartItems.push({item: item, price: price, quantity: 1}); } updateCart(); } function removeFromCart(index) { cartItems.splice(index, 1); updateCart(); } function updateCart() { var cartTotal = 0; var cartItemsHtml = ''; cartItems.forEach(function(cartItem, index) { var subtotal = cartItem.price * cartItem.quantity; cartTotal += subtotal; cartItemsHtml += '<tr>'; cartItemsHtml += '<td>' + cartItem.item + '</td>'; cartItemsHtml += '<td>¥' + cartItem.price + '</td>'; cartItemsHtml += '<td>' + cartItem.quantity + '</td>'; cartItemsHtml += '<td>¥' + subtotal + '</td>'; cartItemsHtml += '<td><button onclick="removeFromCart(' + index + ')">删除</button></td>'; cartItemsHtml += '</tr>'; }); document.getElementById('cartItems').innerHTML = cartItemsHtml; document.getElementById('cartTotal').innerHTML = '¥' + cartTotal; } function submitOrder() { if (cartItems.length > 0) { var confirmMessage = '您的订单包括:\n'; cartItems.forEach(function(cartItem) { confirmMessage += cartItem.item + ' × ' + cartItem.quantity + '\n'; }); confirmMessage += '总计:¥' + document.getElementById('cartTotal').innerHTML; if (confirm(confirmMessage)) { cartItems = []; updateCart(); } } else { alert('请先选择菜品'); } } </script> </body> </html> ``` 该代码包括一个顶部标题,一个菜单区域和一个购物车区域。菜单区域包括几个菜品,每个菜品有一个名称、价格和一个“加入购物车”按钮。购物车区域显示已经加入购物车的菜品,包括名称、价格、数量、小计和一个“删除”按钮。底部显示购物车总计和一个“提交订单”按钮。用户可以通过点击菜单区域的“加入购物车”按钮将菜品加入购物车,然后在购物车区域编辑、删除或提交订单。

相关推荐

最新推荐

recommend-type

Python爬取数据并实现可视化代码解析

主要介绍了Python爬取数据并实现可视化代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
recommend-type

用Pandas和Folium做一个新冠数据可视化

目录数据集介绍可视化步骤1. 导入pandas等需要的库2. 读取数据,查看基本情况3. 读取城市坐标数据4. 按省份统计人数5. 合并城市坐标数据 与 省份数据6. 绘制地图写入HTML文件,并用浏览器打开完整代码 数据集介绍 1...
recommend-type

pytorch 可视化feature map的示例代码

今天小编就为大家分享一篇pytorch 可视化feature map的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

vue实现可视化可拖放的自定义表单的示例代码

主要介绍了vue实现可视化可拖放的自定义表单的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
recommend-type

CODESYS之可视化控件属性(一).docx

前面已经讲解了控件的移动以及控件颜色的...X表示距离可视化界面左侧的距离,Y表示距离可视化界面上侧距离 Width表示矩形框宽度,Height表示矩形框高度,Angle表示矩形框的旋转角度 Center中心指的是矩形框黑点的中心
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

用Spring boot和vue写一个登录注册界面

好的,这是一个比较常见的技术问题,我可以为您提供一些参考资料和思路。首先,您可以使用Spring Boot作为后端框架来处理用户认证和注册的逻辑,比如使用Spring Security实现用户登录认证。同时,您还需要设计相应的数据模型和数据库表结构来存储用户信息。在前端方面,您可以使用Vue.js作为框架来构建登录注册页面,使用Axios来发起API请求并和后端进行交互。当然,在实现过程中,还需要考虑一些具体细节,比如数据校验、安全性和用户体验等方面。希望这些信息能够帮助到您。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。