首页 > 编程 > JavaScript > 正文

基于jQuery实现咖啡订单管理简单应用

2019-11-19 17:38:46
字体:
来源:转载
供稿:网友

这款应用主要实现以下几个功能:

1.在表格中输入客户姓名并选择咖啡,点击“Add”能够把数据传至table。
2.table的每生成一行新数据,其status列都会出现一个小咖啡图标,表示正在制作中。
3.点击这个小咖啡图标,可以变成一个绿色的勾勾,表示该订单已经完成。
4.点击Export可以把表格数据导出为CSV文件。

HTML:

<div class="container-fluid">     <h1>Coffee Orders</h1>     <hr>     <div class="row">       <!-- order form -->       <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4 order-form">         <form class="form-inline" role="form">           <div class="form-group">             <div class="input-group">               <div class="input-group-addon"><i class="fa fa-user" aria-hidden="true"></i></div>               <input type="text" class="form-control order-name" id="name" required="required" placeholder="Name">             </div>             <select class="selectpicker" id="drink">               <option>Latte</option>               <option>Moccha</option>               <option>Cappuchino</option>               <option>Fat White</option>             </select>           </div>           <button type="button" class="btn btn-primary add-order">Add</button>           <button type="reset" class="btn btn-primary pull-right">Reset</button>         </form>       </div>       <!-- order list -->       <div class="col-xs-8 col-sm-8 col-md-8 col-lg-8 order-list">         <table class="table table-hover">           <thead>             <tr>               <th>Name</th>               <th>Order</th>               <th>Status</th>             </tr>           </thead>           <tbody></tbody>         </table>         <div>           <a class="pull-right export" data-export="export">Export to CSV</a>         </div>       </div>     </div>     <hr>     <div class="time">       Order List of <span class="today"></span>     </div>   </div>   <footer>     Designed By <a href="http://blog.csdn.net/alenhhy" rel="external nofollow" target="_blank">Alen Hu</a>   </footer> 

*使用了bootstrap3框架
*选择咖啡的部分,我使用了一款叫bootstrap-select的插件,可以完美兼容bootstrap的UI,但是写CSS的时候要注意一下,得通过浏览器F12查看DOM后,方可根据DOM来写,否则直接写select和option是没用的。

JQuery:

$(document).ready(function() {   var $order = $("tbody");  var $add = $(".add-order");  var $name = $("#name");  var $drink = $("#drink");   //add new data to table  function addToTable() {   if ($name.val()) {    $order.append('<tr><td class="customer-name">' + $name.val() + '</td><td class="customer-order">' + $drink.val() + '</td><td class="customer-status"><i class="fa fa-coffee" aria-hidden="true"></i></td></tr>');    $name.val("");   } else {}  }   $add.on("click", addToTable);  $("form").keypress(function(event) {   if (event.keyCode === 13) {    event.preventDefault();    addToTable();   }  });   //click to tick  $order.delegate('.customer-status > i', 'click',  function() {   $(this).parent().html('<i class="fa fa-check" aria-hidden="true"></i>');  });   //date  var myDate = new Date();  var day = myDate.getDate();  var month = myDate.getMonth() + 1;  var year = myDate.getFullYear();   function plusZero(x) {   if (x < 10) {    x = "0" + x;   } else {    x = x;   }   return x;  }   var today = plusZero(day) + "." + plusZero(month) + "." + year;  $(".today").text(today);   //export table data to CSV  $(".export").click(function() {   $(".table").tableToCSV();  });  }); 

*导出为CSV的这个功能我使用到了一个叫tabletoCSV的插件,用法和源代码可以点击链接进去看看。但是这款插件功能比较单一,真的就是只能导出CSV,不能选择导出哪部分内容,也无法指定文件名称等等,如果你有什么更好的相关插件,欢迎来分享啦~

这里只是简单的做了一下这款应用的表面效果,没有做数据交换方面的事情。
创建JSON文件,使用AJAX(GET,POST,DELETE,POST...)可以储存相关数据。

DEMO在这里,欢迎FORK。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表