jquery实现前台倒计时。应用下单24小时后自动取消该订单
2018-02-26 11:46
459 查看
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<title>testc</title>
<script>
jQuery(document).ready(function(){
//显示时间,以后应用于自动定时器做某一件事
jQuery("div[id^=auto_order_cancel]").each(function(index, element) {
var val=jQuery(this).attr("mark");
var status=jQuery(this).attr("status");
timeCount(val,status,"1");
});
});
function timeCount(remain_id,status){
function _fresh(){
var nowDate = new Date();//当前时间
var id=jQuery('#'+remain_id).attr("order_id"); //当前订单的id
var addTime=new Date(jQuery('#'+remain_id).attr('addTime'));//下单开始时间
var auto_order_cancel=jQuery('#'+remain_id).attr('auto_order_cancel');//订单支付有效时长
var auto_totalS=parseInt(auto_order_cancel*60*60);
var ad_totalS = parseInt((addTime.getTime()/1000)+auto_totalS); ///下单总秒数
var totalS = parseInt(ad_totalS-(nowDate.getTime()/ 1000));///支付时长
if(status == 10){
if(totalS>0){
var _hour = parseInt((totalS / 3600) % 24);
var _minute = parseInt((totalS / 60) % 60);
var _second = parseInt(totalS % 60);
jQuery('#status_'+remain_id).html('剩余'+_hour+'时'+_minute+'分'+_second+'秒');
jQuery('#ico_'+remain_id).show();
}else{//支付超时
jQuery('#status_'+remain_id).html('');
jQuery('#ico_'+remain_id).hide();
clearInterval(sh);
jQuery.ajax({
type:'POST',
url:"http://取消订单的路径",
data:{"id":id},
success:function(data){
window.location.href="http://localhost:8080/buyer/order.htm";
}
});
}
}
}
_fresh();
var sh = setInterval(_fresh,1000);
}
</script>
<style>
.time_icon{
display: inline-block;
width: 15px;
height: 15px;
text-align: center;
margin-bottom: 5px;
margin: 0px 3px 0px 0px;
vertical-align: middle;
overflow: hidden;
background: url(./img/cont_time.png) no-repeat;
}
</style>
</head>
<body>
<!-- status=10 为订单为已下单未支付 addtime:下单时间 auto_order_cancel=24 自动取消时间 -->
<div class="count_time" _val="85542"
id="auto_order_cancel" mark="auto_order_cancel"
order_id="420" status="10" addtime="02/26/2018 08:34:49"
auto_order_cancel="24">
<span class="time_icon" id="ico_auto_order_cancel"></span><i id="status_auto_order_cancel" style="font-style: normal;"></i>
</div>
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<title>testc</title>
<script>
jQuery(document).ready(function(){
//显示时间,以后应用于自动定时器做某一件事
jQuery("div[id^=auto_order_cancel]").each(function(index, element) {
var val=jQuery(this).attr("mark");
var status=jQuery(this).attr("status");
timeCount(val,status,"1");
});
});
function timeCount(remain_id,status){
function _fresh(){
var nowDate = new Date();//当前时间
var id=jQuery('#'+remain_id).attr("order_id"); //当前订单的id
var addTime=new Date(jQuery('#'+remain_id).attr('addTime'));//下单开始时间
var auto_order_cancel=jQuery('#'+remain_id).attr('auto_order_cancel');//订单支付有效时长
var auto_totalS=parseInt(auto_order_cancel*60*60);
var ad_totalS = parseInt((addTime.getTime()/1000)+auto_totalS); ///下单总秒数
var totalS = parseInt(ad_totalS-(nowDate.getTime()/ 1000));///支付时长
if(status == 10){
if(totalS>0){
var _hour = parseInt((totalS / 3600) % 24);
var _minute = parseInt((totalS / 60) % 60);
var _second = parseInt(totalS % 60);
jQuery('#status_'+remain_id).html('剩余'+_hour+'时'+_minute+'分'+_second+'秒');
jQuery('#ico_'+remain_id).show();
}else{//支付超时
jQuery('#status_'+remain_id).html('');
jQuery('#ico_'+remain_id).hide();
clearInterval(sh);
jQuery.ajax({
type:'POST',
url:"http://取消订单的路径",
data:{"id":id},
success:function(data){
window.location.href="http://localhost:8080/buyer/order.htm";
}
});
}
}
}
_fresh();
var sh = setInterval(_fresh,1000);
}
</script>
<style>
.time_icon{
display: inline-block;
width: 15px;
height: 15px;
text-align: center;
margin-bottom: 5px;
margin: 0px 3px 0px 0px;
vertical-align: middle;
overflow: hidden;
background: url(./img/cont_time.png) no-repeat;
}
</style>
</head>
<body>
<!-- status=10 为订单为已下单未支付 addtime:下单时间 auto_order_cancel=24 自动取消时间 -->
<div class="count_time" _val="85542"
id="auto_order_cancel" mark="auto_order_cancel"
order_id="420" status="10" addtime="02/26/2018 08:34:49"
auto_order_cancel="24">
<span class="time_icon" id="ico_auto_order_cancel"></span><i id="status_auto_order_cancel" style="font-style: normal;"></i>
</div>
</body>
</html>
相关文章推荐
- jquery实现前台倒计时。应用下单24小时后自动取消该订单
- 基于jQuery实现咖啡订单管理简单应用
- 7天自动收货,30分钟不支付订单自动取消是如何实现的?
- 如何实现下订单后一个小时后未付款的订单自动取消
- 7天自动收货,30分钟不支付订单自动取消是如何实现的?
- 订单倒计时取消,nodejs 辅助实现倒计时任务
- jquery实现倒计时小应用
- 实现3天订单自动取消
- jQuery一句话实现多选框全选/取消
- Android应用开发笔记(12):Android应用的自动升级、更新模块的实现
- jQuery.Autocomplete实现自动完成功能(详解)
- jQuery.Autocomplete实现自动完成功能(详解)
- jquery的attr和removeAttr实现checkbox全选和取消全选问题
- Android应用自动更新功能的实现!!!软件更新,自动下载,安装
- android应用第二次登录实现自动登录
- SharePoint:扩展DVWP - 第22部分:jQuery实现基于其他字段自动创建标题
- Android应用的自动升级、更新模块的实现
- jQuery实现图片与文字描述左右滑动自动切换的方法
- jquery 实现邮箱输入自动提示功能
- JQuery实现的输入框自动补全