×
jQuery EasyUI 教程jQuery EasyUI 简介

jQuery EasyUI 应用

创建 CRUD 应用创建 CRUD 数据网格创建 CRUD 表单的创建 RSS Feed 阅读器

jQuery EasyUI 拖放

基本的拖动和放置创建拖放的购物车创建学校课程表

jEasyUI 菜单与按钮

创建简单的菜单创建链接按钮创建菜单按钮创建分割按钮

jQuery EasyUI 布局

为网页创建边框布局在面板中创建复杂布局创建折叠面板创建标签页(Tabs)动态添加标签页(Tabs)添加自动播放标签页(Tabs)创建 XP 风格左侧面板

jQuery EasyUI 数据网格

转换 HTML 表格为数据网格取得选中行数据添加查询功能添加工具栏创建复杂工具栏设置冻结列动态改变列格式化列设置排序自定义排序创建列组合添加复选框自定义分页启用行内编辑扩展编辑器列运算合并单元格创建自定义视图创建页脚摘要条件设置行背景颜色创建属性网格扩展行显示细节创建子网格使用虚拟滚动视图显示海量数据添加分页组件

jQuery EasyUI 窗口

创建简单窗口自定义窗口工具栏窗口与布局创建对话框自定义对话框

jQuery EasyUI 树形菜单

使用标记创建树形菜单创建异步树形菜单树形菜单添加节点创建带复选框的树形菜单树形菜单拖放控制树形菜单加载父/子节点创建基础树形网格创建复杂树形网格树形网格动态加载树形网格添加分页树形网格惰性加载节点

jQuery EasyUI 表单

创建异步提交表单表单验证创建树形下拉框格式化下拉框过滤下拉数据网格

jQuery EasyUI 参考手册

jQuery EasyUI 插件jQuery EasyUI 扩展

jQuery EasyUI 拖放 – 创建拖放的购物车


如果您能够通过您的 Web 应用简单地实现拖动和放置,您就会知道一些特别的东西。通过 jQuery EasyUI,我们在 Web 应用中可以简单地实现拖放功能。

在本教程中,我们将向您展示如何创建一个启用用户拖动和放置用户想买的商品的购物车页面。购物篮中的物品和价格将更新。

显示页面上的商品


<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>

正如您所看到的上面的代码,我们添加一个包含一些 <li> 元素的 <ul> 元素来显示商品。所有商品都有名字和价格属性,它们包含在 <p> 元素中。

创建购物车


<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>

我们使用数据网格(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';
}
});

请注意,我们把 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);
}

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

下载 jQuery EasyUI 实例

jeasyui-dd-shopping.zip


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)