1. 程式人生 > >Js:消息彈出框、獲取時間區間、時間格式、easyui datebox 自定義校驗、表單數據轉化json、控制兩個日期不能只填一個

Js:消息彈出框、獲取時間區間、時間格式、easyui datebox 自定義校驗、表單數據轉化json、控制兩個日期不能只填一個

gets pri ESS 大於等於 轉化 gpo 現在 undefine parent


(function ($) {
    $.messageBox = function (message) {
        $.messager.show({
            title:‘消息框提示‘,
            msg:message,
            showType:‘show‘
        });
    };

    /**
     * 獲取時間區間
     * @param type 1:當年的一月一日到現在;type 2:獲取當月的第一天和最後一天
     * return {startTime:xxxx,endTime:xxxx}
     */
$.getTimeInterval = function (type,date){ var startTime, endTime; if (type == 1) { var year = new Date(); startTime = new Date(year.getFullYear(), 0, 1); //年頭(xxxx-1-1) endTime = new Date(); }else if(type == 2){ var y = date.substr(0,4), m = date.substr(4,2); startTime = new
Date(y,m-1,1).format("yyyy-MM-dd"); var days = new Date(y,m,0).getDate(); endTime = new Date(y,m-1,days).format("yyyy-MM-dd"); } return {startTime:startTime, endTime:endTime}; } //防止dialog框拖動時超出父面板,需要在有dialog的頁面調用 $.setDialogPosition = function () { var
easyuiPanelOnMove = function (left, top) { var l = left; var t = top; if (l < 1) { l = 1; } if (t < 1) { t = 1; } var width = parseInt($(this).parent().css(‘width‘)) + 14; var height = parseInt($(this).parent().css(‘height‘)) + 14; var right = l + width; var buttom = t + height; var browserWidth = $(window).width(); var browserHeight = $(window).height(); if (right > browserWidth) { l = browserWidth - width; } if (buttom > browserHeight) { t = browserHeight - height; } $(this).parent().css({ //修正面板位置 left:l, top:t }); }; $.fn.dialog.defaults.onMove = easyuiPanelOnMove; $.fn.window.defaults.onMove = easyuiPanelOnMove; $.fn.panel.defaults.onMove = easyuiPanelOnMove; }; $.fn.toolbar.defaults.valign = null; //時間格式化 Date.prototype.format = function (format) { var o = { "M+":this.getMonth() + 1, //month "d+":this.getDate(), //day "h+":this.getHours(), //hour "m+":this.getMinutes(), //minute "s+":this.getSeconds(), //second "q+":Math.floor((this.getMonth() + 3) / 3), //quarter "S":this.getMilliseconds() //millisecond } if (/(y+)/.test(format)) format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o)if (new RegExp("(" + k + ")").test(format)) format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); return format; } // easyui datebox 自定義校驗 var datePattern=/^(\d{4})[-/](\d{1,2})[-/](\d{1,2})$/,opText={">":"大於","<":"小於",">=":"大於等於","<=":"小於等於"}; $.extend($.fn.validatebox.defaults.rules, { compareDate_resetTg:{ validator:function (value, param) { if (value && param.length > 0) { if (datePattern.test(value)) { var el = $(param[0]), v = el.val() || el.getWidget().getValue(); if (v) { if (datePattern.test(v)) { // var op = param.length > 1 ? param[1] : ">", d1 = new Date(value), d2 = new Date(v); var op=param.length>1?param[1]:">",d1 = new Date(value.replace(/[-/]/g, "/")),d2 = new Date(v.replace(/[-/]/g, "/")); if (eval(d1.getTime() + op + d2.getTime())){ return true; } else { param[0] = "無效,應" + opText[op] + v; $(param[2]).datebox("reset"); return false; } } } } else { param[0] = "無效"; return false; } } return true; }, message: ‘輸入日期{0}‘ } /* , ruleAppealOpinion:{ validator:function (value, param) { if(param.length > 0){ var count=$("#"+param[0]).getWidget()?$("#"+param[0]).getWidget().getValue():$("#"+param[0]).val(); var type=$("#"+param[1]).getWidget()?$("#"+param[1]).getWidget().getValue():$("#"+param[1]).val(); if(count>0){ if(!value&&param[2]==3){ return false; } } else{ if(type==1){ if(!value&&(param[2]==1||param[2]==0)){ return false; } } else if(type==2){ if(!value&&(param[2]==2||param[2]==0)){ return false; } } else{ if(!value&&param[2]==3){ return false; } } } } return true; }, message: ‘不能為空!‘ }*/ }) })(jQuery); //表單數據轉化json function form2Json() { var o = {}; var a = $("form input").serializeArray(); $.each(a, function () { if (o[this.name]) { if (!o[this.name].push) { o[this.name] = [o[this.name]]; } o[this.name].push(this.value || ‘‘); } else { o[this.name] = this.value || ‘‘; } }); return o; } function getFileBatchNo(){ return loginAccount.accountId + "_" + new Date().getTime(); } function isLeaf(node) { return node.state == undefined; } function dowloadFile(downLoadFile) { var fileNames = [‘GoogleChromeframeStandaloneEnterprise.msi‘,‘flashplayer11-7_install_win_ax.exe‘]; var msg = ["系統需要ie8及以上版本,如果您的瀏覽器版本過低!為了提供更好的體驗,請點擊【確定】下載安裝瀏覽器插件,並重啟瀏覽器", "你確定下載flash控件?"]; var r = window.confirm(msg[downLoadFile]); if (r) { location.href = ctx + "/"+fileNames[downLoadFile]; } } function resetDgFooterStyle() { $(‘.datagrid-footer-inner‘).css(‘background‘, ‘#88CDEF‘); } /** * 控制兩個日期不能只填一個 * @param targetFr * @param targetTo * @return {Boolean} */ var validate = function(targetFr,targetTo){ var vFr = $(targetFr).getWidget().getValue()||""; var vTo = $(targetTo).getWidget().getValue()||""; var allNotNull = vFr&&vTo; var allNull = vFr==""&&vTo==""; if(allNotNull||allNull){ return true; } $.alert("請填寫完整的日期區間"); return false; }

Js:消息彈出框、獲取時間區間、時間格式、easyui datebox 自定義校驗、表單數據轉化json、控制兩個日期不能只填一個