Home > Web Front-end > JS Tutorial > body text

Easily learn the jQuery plug-in EasyUI EasyUI to implement drag-and-drop products and place them in the shopping cart_jquery

WBOY
Release: 2016-05-16 15:28:49
Original
1288 people have browsed it

在本文中,我们将向您展示如何创建一个启用用户拖动和放置用户想买的商品的购物车页面,购物篮中的物品和价格将更新,分享给大家,具体内容如下:

效果图:

具体代码如下

显示页面上的商品:

<ul class="products">
 <li>
 <a href="#" class="item">
  <img src="images/shirt1.gif"/>
  <div>
  <p>Balloon</p>
  <p>Price:$25</p>
  </div>
 </a>
 </li>
 <li>
 <a href="#" class="item">
  <img src="images/shirt2.gif"/>
  <div>
  <p>Feeling</p>
  <p>Price:$25</p>
  </div>
 </a>
 </li>
 <!-- other products -->
</ul>
Copy after login

正如您所看到的上面的代码,我们添加一个包含一些

  • 元素的
      元素来显示商品。所有商品都有名字和价格属性,它们包含在

      元素中。
      创建购物车:

      <div class="cart">
       <h1>Shopping Cart</h1>
       <table id="cartcontent" style="width:300px;height:auto;">
       <thead>
        <tr>
        <th field="name" width=140>Name</th>
        <th field="quantity" width=60 align="right">Quantity</th>
        <th field="price" width=60 align="right">Price</th>
        </tr>
       </thead>
       </table>
       <p class="total">Total: $0</p>
       <h2>Drop here to add to cart</h2>
      </div>
      
      Copy after login

      我们使用数据网格(datagrid)来显示购物篮中的物品。
      拖动克隆的商品:

      $('.item').draggable({
       revert:true,
       proxy:'clone',
       onStartDrag:function(){
       $(this).draggable('options').cursor = 'not-allowed';
       $(this).draggable('proxy').css('z-index',10);
       },
       onStopDrag:function(){
       $(this).draggable('options').cursor='move';
       }
      });
      
      Copy after login

      请注意,我们把 draggable 属性的值从 'proxy' 设置为 'clone',所以拖动元素将由克隆产生。
      放置选择商品到购物车中

      $('.cart').droppable({
       onDragEnter:function(e,source){
       $(source).draggable('options').cursor='auto';
       },
       onDragLeave:function(e,source){
       $(source).draggable('options').cursor='not-allowed';
       },
       onDrop:function(e,source){
       var name = $(source).find('p:eq(0)').html();
       var price = $(source).find('p:eq(1)').html();
       addProduct(name, parseFloat(price.split('$')[1]));
       }
      });
      var data = {"total":0,"rows":[]};
      var totalCost = 0;
      function addProduct(name,price){
       function add(){
       for(var i=0; i<data.total; i++){
        var row = data.rows[i];
        if (row.name == name){
        row.quantity += 1;
        return;
        }
       }
       data.total += 1;
       data.rows.push({
        name:name,
        quantity:1,
        price:price
       });
       }
       add();
       totalCost += price;
       $('#cartcontent').datagrid('loadData', data);
       $('div.cart .total').html('Total: $'+totalCost);
      } 
      
      Copy after login

      每当放置商品的时候,我们首先得到商品名称和价格,然后调用 'addProduct' 函数来更新购物篮。

      EasyUI实现拖放商品放置购物车的功能就介绍到这,有了本文为大家提供的实例,相信大家应该很轻松的就可以实现拖放商品放置购物车的模块设计,谢谢大家的阅读。

  • Related labels:
    source:php.cn
    Statement of this Website
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
    Popular Tutorials
    More>
    Latest Downloads
    More>
    Web Effects
    Website Source Code
    Website Materials
    Front End Template