博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jquery + css 日期控件用法实例.zip
阅读量:5292 次
发布时间:2019-06-14

本文共 4606 字,大约阅读时间需要 15 分钟。

/*==============================================================================

*
* Filename:common.js
* Description:  公共JS方法封装,主要包含,页面的鼠标移动行的颜色跟着改变,以及
增加、修改、删除弹出隐藏Div进行操作,增加。修改赋值问题。本实例只包含日期控件用法
具体用法很简单,在文本框中增加  attr="ymd"  2013-09-10格式 可以选择自己需要的日期格式
用法:
1.引用 css.css文件样式
2.引用jquery-1.7.2.min.js jquery框架
3.引用common.js 公共类
* Version: 1.0
* Created: 2011.05.27
* Author : liangjw
* E-mail : liangjw0504@163.com
* Q   Q  : 592568532
* Profile Url:http://90ideas.net/
* Company: Copyright (C) Create Family Wealth Power By Peter
*
==============================================================================*/
 * 备注信息: 上传部分自己总结的常用方法的封装,有不足和不完美之处,希望大家指出来,愿意一起
 * 主要研究erp,cms,crm,b2b,oa等系统和网站的开发,欢迎有共同追求和学的IT人员一起学习和交流。
 * 学习和讨论有关asp.net  mvc ,Ajax ,jquery ,html/css, xml,sqlserver ,wpf,IIS以及服务器的搭建和安全性相关技术的交流和学习。

1. [图片] ymdh.png    

2. [图片] ymdhm.jpg    

3. [图片] ymdhms.jpg    

​​4. [代码][C#]代码   
/******************************************************************************
* Filename:  common.js
* Description:  公共JS方法封装,主要包含,页面的鼠标移动行的颜色跟着改变,以及
增加、修改、删除弹出隐藏Div进行操作,增加。修改赋值问题。本实例只包含日期控件用法
具体用法很简单,在文本框中增加  attr="ymd"  2013-09-10格式 可以选择自己需要的日期格式
用法:
1.引用 css.css文件样式
2.引用jquery-1.7.2.min.js jquery框架
3.引用common.js 公共类
* Author :  liangjw
* Created Mark:  2013-08-15
* E-mail: liangjw0504@163.com
* QQ:592568532
* Version:    V1.0.0.0
* Company: : Copyright (C) 2013 Create Family Wealth Power By Peter All Rights Reserved
* Remark: 封装自己总结的常用方法的封装,有不足和不完美之处,希望大家指出来,愿意一起
* 主要研究erp,cms,crm,b2b,oa等系统和网站的开发,欢迎有共同追求和学的IT人员一起学习和交流。
* 学习和讨论有关asp.net  mvc ,Ajax ,jquery ,html/css, xml,sqlserver ,wpf,IIS以及服务器的搭建和安全性相关技术的交流和学习。
* Update Author:   无
* Update Description: 无
* Update Mark : 无
*******************************************************************************/
 
///日期控件操作法方法封装//
$(function () {
    $("input[attr^=ym]").each(function () {
        $(this).attr("readonly", "readonly");
        $(this).on("click", function () {
            MVC_CalendarInit(this.value, this.id);
        });
    });
});
///
//日期控件弹出位置定位
///
$.fn.extend({
    setPosition: function (obj) {
        var iX, iY;
        var pi = getAbsPoint(obj);
        //计算left
        if (pi.absLeft + this.outerWidth() > $(window).width() + $(document).scrollLeft()) {
            iX = pi.absRight - this.outerWidth();
        }
        else {
            iX = pi.absLeft;
        }
        //计算top
        if (pi.absBottom + this.outerHeight() > $(window).height() + $(document).scrollTop()) {
            iY = pi.absTop - this.outerHeight();
        }http://www.huiyi8.com/gongzuozongjie/​
        else {
            iY = pi.absBottom;
        }
        //逻辑处理left,top属性
        if (iX < 0) {
            iX = 0;
        }
        if (iY < 0) {
            iY = 0;
        }
        //设置属性
        this.css({ left: iX + "px", top: iY + "px" });
 
        return this;
    }
});
 
///
//获取控件的在页面中的绝对位置
function getAbsPoint(obj) {
    var x = $(obj).offset().left;
    var y = $(obj).offset().top;
    var xw = $(obj).outerWidth();
    var yh = $(obj).outerHeight();
 
    return { absTop: y, absLeft: x, absRight: x + xw, absBottom: y + yh };
}
 
var MVC_CalendarElementId = null;
function MVC_CalendarInit(time, id) {
    if (time == "") time = null;
    if (time != null) time = time.replace(new RegExp(/-/ig), "/");
    $("#MVC_Calendar").remove();
    MVC_CalendarElementId = id;
    var Calendar = $(CreateDateTable(time));
    Calendar.find("*").attr("Author", "MVC_Calendar");
    $(document.body).append(Calendar);
    Calendar.setPosition($("#" + MVC_CalendarElementId));  //设置弹出位置定位
}
 
///
//创建设置数值
///
function MVC_CalendarSetValue(v) {
    if (v == "")
        $("#" + MVC_CalendarElementId).val("");
    else if (v != null)
        $("#" + MVC_CalendarElementId).val(new Date(v).format(MVC_CalendarFormatStr($("#" + MVC_CalendarElementId).attr("attr"))));
    $("#MVC_Calendar").remove();
}
 
///
//对日期的处理模式
function MVC_CalendarChangeValue(id) {
    var v = $("#" + id).val();
    var t = new Date($("#" + MVC_CalendarElementId).val().replace(new RegExp(/-/ig), "/"));
    if (t == "NaN" || t == "Invalid Date") {
        t = new Date();
    }
    switch (id) {
        case "MVC_CalendarYear":
            t.setYear(v);
            break;
        case "MVC_CalendarMonth":
            t.setMonth(v - 1);
            break;
        case "MVC_CalendarHours":
            t.setHours(v);
            break;
        case "MVC_CalendarMinutes":
            t.setMinutes(v);
            break;
        case "MVC_CalendarSeconds":
            t.setSeconds(v);
            break;
    }
    $("#" + MVC_CalendarElementId).val(new Date(t).format(MVC_CalendarFormatStr($("#" + MVC_CalendarElementId).attr("attr"))));
}
 
///
//事件格式处理js方法,常用的日期时间格式,包含以下格式
//ym ;2013-09
///
function MVC_CalendarFormatStr(t) {
 
    //获取参数,转换为小写进行处理判断,返回指定日期时间格式
    switch (t.toLowerCase()) {
        case "ym":
            return "yyyy-MM";
            break;
        case "ymd":
            return "yyyy-MM-dd";
            break;
        case "ymdh":
            return "yyyy-MM-dd hh";
            break;
        case "ymdhm":
            return "yyyy-MM-dd hh:mm";
            break;
        case "ymdhms":
            return "yyyy-MM-dd hh:mm:ss";
            break;
        default:
            return "yyyy-MM-dd";
            break;
    }
}
 
function NullReplace(v, r) {
    var v = undefined ? r : v;
    return v;
}

转载于:https://www.cnblogs.com/xkzy/p/3977643.html

你可能感兴趣的文章
Red Hat安全性指南
查看>>
《构建之法》第五章自习感想与知识点
查看>>
[Swift]LeetCode741. 摘樱桃 | Cherry Pickup
查看>>
[Xcode 实际操作]六、媒体与动画-(8)使用CATransaction Reveal制作渐显动画
查看>>
[Xcode 实际操作]八、网络与多线程-(5)使用UIApplication对象发送邮件
查看>>
bzoj 1093: [ZJOI2007]最大半连通子图
查看>>
springCloud的zuul基于config和github实现热更新
查看>>
python学习笔记(pip下载安装)
查看>>
CSS
查看>>
shell 管道和tee使用时获取前面命令返回值
查看>>
[LeetCode] 55. Jump Game_ Medium tag: Dynamic Programming
查看>>
[Cypress] Stub a Post Request for Successful Form Submission with Cypress
查看>>
[TypeScript] Understanding Generics with RxJS
查看>>
一、基础篇--1.3进程和线程-基本概念
查看>>
Linux kernel ‘ioapic_read_indirect’函数拒绝服务漏洞
查看>>
WordPress GRAND FlAGallery插件“s”跨站脚本漏洞
查看>>
zoj3690 Choosing number
查看>>
阳宇宸:网站开发的常用语言
查看>>
CF 600 E 启发式合并
查看>>
保险配置
查看>>