您好,登錄后才能下訂單哦!
功能需求如下:
1) 使用 datetimebox 日期控件, 選擇開始日期 startdate, 結(jié)束日期 leavedate ,然后求兩日期間相隔天數(shù) numdays ;
2) 天數(shù) x 補(bǔ)助 = 包干費(fèi)用; (numdays * allowance = def11 )
下面是效果圖:
一. form 表單:開始時(shí)間,結(jié)束時(shí)間兩個(gè)都使用 onChange 事件;
<td>派遣時(shí)間:</td> <td><input class="easyui-datetimebox" id="startdate" name="startdate" data-options="onChange:onSelectT" /></input></td> <td>離開客戶處時(shí)間:</td> <td><input class="easyui-datetimebox" id="leavedate" name="leavedate" data-options="onChange:onSelectT" /></input></td> <td>售后所用天數(shù):</td> <td><input class="easyui-numberbox" id="numdays" name="numdays" data-options="onChange:onSelectT" precision="0" min="0" readonly ="readonly"/></input> </td> <td>補(bǔ)助:</td> <td><input name="allowance" id="allowance" class="easyui-numberbox" precision="0" min="0"></td> <td>包干費(fèi)用:</td> <td><input name="def11" id="def11" class="easyui-numberbox" precision="0" min="0" readonly ="readonly"></td>
二.計(jì)算相隔天數(shù)
//計(jì)算日期方法: function onSelectT(d) { var sd = $('#startdate').datebox('getValue').replace(/-/g, '/'), ed = $('#leavedate').datebox('getValue').replace(/-/g, '/'); if (sd != '' && ed != '') { if (sd > ed) { $.messager.alert('警告','結(jié)束時(shí)間要 大于 開始時(shí)間','warning'); } else { var totalMS = new Date(ed).getTime() - new Date(sd).getTime();//得到相差的毫秒數(shù) day = Math.ceil(totalMS / 1000 / 24 / 60 / 60);//得到相差天數(shù),不滿一天不算一天將Math.ceil改為Math.floor $("#numdays").numberbox("setValue", day); //所用天數(shù) */ } } }
三.計(jì)算費(fèi)用
$(function() { //(根據(jù) 售后天數(shù) *補(bǔ)助)計(jì)算包干費(fèi)用 $("input",$("#allowance").next("span")).blur(function(){//鼠標(biāo)離開 '補(bǔ)助' 欄后,觸發(fā) var adays =$("#numdays").numberbox('getValue');//天數(shù) var abz =$("#allowance").numberbox('getValue');//補(bǔ)助 var abaogan = adays * abz;//(售后天數(shù)*補(bǔ)助=包干費(fèi)用) $("#def11").numberbox('setValue', abaogan);//包干費(fèi)用 }); })
接下來(lái)是應(yīng)用 (一些需要注意的細(xì)節(jié)):
(1)定義全局變量 day
var day = 0;//默認(rèn)為 day = 0
(2)添加方法();
function addMethod() { initialise(); //調(diào)用初始化函數(shù) onSelectT();//計(jì)算相隔時(shí)間天數(shù) day = 0;// .form("clear");方法不能成功清除上次緩存。所以在添加方法中重新聲明 day = 0,作用是第二次點(diǎn)擊添加時(shí),將上次的天數(shù)重置為 0 天, <span > </span>替代 .form("clear"); $('#editWindow').dialog('open').dialog('center').dialog('setTitle', '添加派遣單信息'); $('#eidtform').form("clear"); $("#allowance").numberbox("setValue", 0); //補(bǔ)助 $("#numdays").numberbox("setValue", 0); //添加默認(rèn)塞值 (所用天數(shù)) $("#def11").numberbox("setValue", 0); //包干費(fèi)用 $('#editWindow').window("open"); }
以上所述是小編給大家介紹的jQueryeasyui 中如何使用datetimebox 取兩個(gè)日期間相隔的天數(shù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)億速云網(wǎng)站的支持!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。