java设置时间 时分秒_java spring 框架从页面传入时间,精确到时分秒(上)

本文介绍了一个使用JavaScript实现的日历插件,该插件能够显示指定月份的日历,并具备前后翻页的功能。通过简单的参数配置,可以轻松地在网页上嵌入一个美观实用的日历组件。

//页面上的日期是用js写的一个日历

var weekend = [0,6];

var weekendColor = "#e0e0e0";

var fontface = "宋体";

var fontsize = 2;

var gNow = new Date();

var ggWinCal;

isNav = (navigator.appName.indexOf("Netscape") != -1) ? true :

false;

isIE = (navigator.appName.indexOf("Microsoft") != -1) ? true :

false;

Calendar.Months = ["一月", "二月", "三月", "四月", "五月",

"六月",

"七月", "八月", "九月", "十月", "十一月", "十二月"];

// 不是润年

Calendar.DOMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30,

31];

// 闰年

Calendar.lDOMonth = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30,

31];

function Calendar(p_item, p_WinCal, p_month, p_year, p_format)

{

if ((p_month == null) && (p_year ==

null)) return;

if (p_WinCal == null)

this.gWinCal = ggWinCal;

else

this.gWinCal = p_WinCal;

if (p_month == null) {

this.gMonthName = null;

this.gMonth = null;

this.gYearly = true;

} else {

this.gMonthName =

Calendar.get_month(p_month);

this.gMonth = new

Number(p_month);

this.gYearly = false;

}

this.gYear = p_year;

this.gFormat = p_format;

this.gBGColor = "white";

this.gFGColor = "black";

this.gTextColor = "black";

this.gHeaderColor = "black";

this.gReturnItem = p_item;

}

Calendar.get_month = Calendar_get_month;

Calendar.get_daysofmonth = Calendar_get_daysofmonth;

Calendar.calc_month_year = Calendar_calc_month_year;

Calendar.print = Calendar_print;

function Calendar_get_month(monthNo) {

return Calendar.Months[monthNo];

}

function Calendar_get_daysofmonth(monthNo, p_year) {

/*

Check for leap year ..

1.Years evenly divisible by four are normally

leap years, except for...

2.Years also evenly divisible by 100 are not leap

years, except for...

3.Years also evenly divisible by 400 are leap

years.

*/

if ((p_year % 4) == 0) {

if ((p_year % 100) == 0

&& (p_year % 400) != 0)

return

Calendar.DOMonth[monthNo];

return

Calendar.lDOMonth[monthNo];

} else

return

Calendar.DOMonth[monthNo];

}

function Calendar_calc_month_year(p_Month, p_Year, incr)

{

/*

Will return an 1-D array with 1st element being

the calculated month

and second being the calculated year

after applying the month increment/decrement as

specified by 'incr' parameter.

'incr' will normally have 1/-1 to navigate thru

the months.

*/

var ret_arr = new Array();

if (incr == -1) {

// B A C K W A R D

if (p_Month == 0) {

ret_arr[0] =

11;

ret_arr[1] =

parseInt(p_Year) - 1;

}

else {

ret_arr[0] =

parseInt(p_Month) - 1;

ret_arr[1] =

parseInt(p_Year);

}

} else if (incr == 1) {

// F O R W A R D

if (p_Month == 11) {

ret_arr[0] =

0;

ret_arr[1] =

parseInt(p_Year) + 1;

}

else {

ret_arr[0] =

parseInt(p_Month) + 1;

ret_arr[1] =

parseInt(p_Year);

}

}

return ret_arr;

}

function Calendar_print() {

ggWinCal.print();

}

function Calendar_calc_month_year(p_Month, p_Year, incr)

{

/*

Will return an 1-D array with 1st element being

the calculated month

and second being the calculated year

after applying the month increment/decrement as

specified by 'incr' parameter.

'incr' will normally have 1/-1 to navigate thru

the months.

*/

var ret_arr = new Array();

if (incr == -1) {

// B A C K W A R D

if (p_Month == 0) {

ret_arr[0] =

11;

ret_arr[1] =

parseInt(p_Year) - 1;

}

else {

ret_arr[0] =

parseInt(p_Month) - 1;

ret_arr[1] =

parseInt(p_Year);

}

} else if (incr == 1) {

// F O R W A R D

if (p_Month == 11) {

ret_arr[0] =

0;

ret_arr[1] =

parseInt(p_Year) + 1;

}

else {

ret_arr[0] =

parseInt(p_Month) + 1;

ret_arr[1] =

parseInt(p_Year);

}

}

return ret_arr;

}

// This is for compatibility with Navigator 3, we have to

create and discard one object before the prototype object

exists.

new Calendar();

Calendar.prototype.getMonthlyCalendarCode = function() {

var vCode = "";

var vHeader_Code = "";

var vData_Code = "";

// Begin Table Drawing code here..

vCode = vCode + "

BGCOLOR=\"" + this.gBGColor + "\">";

vHeader_Code = this.cal_header();

vData_Code = this.cal_data();

vCode = vCode + vHeader_Code + vData_Code;

vCode = vCode + "

";

return vCode;

}

Calendar.prototype.show = function() {

var vCode = "";

this.gWinCal.document.open();

// Setup the page...

this.wwrite("");

this.wwrite("

日历");

this.wwrite("");

this.wwrite("

"link=\"" + this.gLinkColor +

"\" " +

"vlink=\"" + this.gLinkColor +

"\" " +

"alink=\"" + this.gLinkColor +

"\" " +

"text=\"" + this.gTextColor +

"\">");

this.wwriteA("

SIZE=2>");

this.wwriteA(this.gMonthName + " " +

this.gYear);

this.wwriteA("
");

// Show navigation buttons

var prevMMYYYY =

Calendar.calc_month_year(this.gMonth, this.gYear, -1);

var prevMM = prevMMYYYY[0];

var prevYYYY = prevMMYYYY[1];

var nextMMYYYY =

Calendar.calc_month_year(this.gMonth, this.gYear, 1);

var nextMM = nextMMYYYY[0];

var nextYYYY = nextMMYYYY[1];

this.wwrite("

CELLSPACING=0 CELLPADDING=0 BGCOLOR='#FFCC99'>

ALIGN=center>");

this.wwrite("[

"javascript:window.opener.Build("

+

"'" + this.gReturnItem + "', '"

+ this.gMonth + "', '" + (parseInt(this.gYear)-1) + "', '" +

this.gFormat + "'" +

");" +

"\"><<]

ALIGN=center>");

this.wwrite("[

"javascript:window.opener.Build("

+

"'" + this.gReturnItem + "', '"

+ prevMM + "', '" + prevYYYY + "', '" + this.gFormat + "'" +

");" +

"\"><]

ALIGN=center>");

this.wwrite("[

"javascript:window.opener.Build("

+

"'" + this.gReturnItem + "', '"

+ nextMM + "', '" + nextYYYY + "', '" + this.gFormat + "'" +

");" +

"\">>]

ALIGN=center>");

this.wwrite("[

"javascript:window.opener.Build("

+

"'" + this.gReturnItem + "', '"

+ this.gMonth + "', '" + (parseInt(this.gYear)+1) + "', '" +

this.gFormat + "'" +

");" +

"\">>>]


");

// Get the complete calendar code for the

month..

vCode = this.getMonthlyCalendarCode();

this.wwrite(vCode);

this.wwrite("");

this.gWinCal.document.close();

}

Calendar.prototype.showY = function() {

var vCode = "";

var i;

var vr, vc, vx,

vy; // Row, Column, X-coord,

Y-coord

var vxf =

285; //

X-Factor

var vyf =

200; //

Y-Factor

var vxm =

10; //

X-margin

var

vym; //

Y-margin

if (isIE) vym = 75;

else if (isNav) vym = 25;

this.gWinCal.document.open();

this.wwrite("");

this.wwrite("

Calendar");

this.wwrite("

for (i=0; i

vc = i % 3;

if (i>=0 && i

2) vr = 0;

if (i>=3 && i

5) vr = 1;

if (i>=6 && i

8) vr = 2;

if (i>=9 && i

11) vr = 3;

vx = parseInt(vxf * vc) +

vxm;

vy = parseInt(vyf * vr) +

vym;

this.wwrite(".lclass" + i

+ " {position:absolute;top:" + vy + ";left:" + vx + ";}");

}

this.wwrite("-->\n");

this.wwrite("");

this.wwrite("

"link=\"" + this.gLinkColor +

"\" " +

"vlink=\"" + this.gLinkColor +

"\" " +

"alink=\"" + this.gLinkColor +

"\" " +

"text=\"" + this.gTextColor +

"\">");

this.wwrite("

SIZE=2>");

this.wwrite("Year : " + this.gYear);

this.wwrite("
");

// Show navigation buttons

var prevYYYY = parseInt(this.gYear) - 1;

var nextYYYY = parseInt(this.gYear) + 1;

this.wwrite("

CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0'>

ALIGN=center>");

this.wwrite("[

"javascript:window.opener.Build("

+

"'" + this.gReturnItem + "',

null, '" + prevYYYY + "', '" + this.gFormat + "'" +

");" +

"\" alt='Prev

Year'><<]

ALIGN=center>");

this.wwrite("[

HREF=\"javascript:window.print();\">Print

]

ALIGN=center>");

this.wwrite("[

"javascript:window.opener.Build("

+

"'" + this.gReturnItem + "',

null, '" + nextYYYY + "', '" + this.gFormat + "'" +

");" +

"\">>>]


");

// Get the complete calendar code for each

month..

var j;

for (i=11; i>=0; i--) {

if (isIE)

this.wwrite("

ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");

else if (isNav)

this.wwrite("

ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");

this.gMonth = i;

this.gMonthName =

Calendar.get_month(this.gMonth);

vCode =

this.getMonthlyCalendarCode();

this.wwrite(this.gMonthName +

"/" + this.gYear + "
");

this.wwrite(vCode);

if (isIE)

this.wwrite("

");

else if (isNav)

this.wwrite("");

}

this.wwrite("
");

this.gWinCal.document.close();

}

Calendar.prototype.wwrite = function(wtext) {

this.gWinCal.document.writeln(wtext);

}

Calendar.prototype.wwriteA = function(wtext) {

this.gWinCal.document.write(wtext);

}

//由于字数限制,后面内容在下篇文章中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值