当前位置: 首页 > 图文教程 > 网络编程 > ASP > javascript asp教程 日期相关

ASP
ASP 三层架构 Convert类实现代码
asp 采集程序常用函数分析
asp 通用修改和增加函数代码
初学js者对javascript面向对象的认识分析
Asp定时执行操作 Asp定时读取数据库(网页定时操作详解)
ASP 80040e14错误的解决方法
ASP实例:ASP+AJAX制作无刷新新闻评论系统
ASP教程:ContentType属性
rs.open sql,conn,1,1全接触
处理较长文章,添加 …… 效果
[ASP]利用 xmlhttp 分块上传文件
asp,php 和 jsp 比较 之我见
刷一次变一次图的ASP代码
ASP基础
随机生成文件名的函数
ASP自动解压RAR文件
从数据表中取出第n条到第m条的记录的方法
WEB打印大全
在ASP与ASP.NET之间共享对话状态(2)
在ASP与ASP.NET之间共享对话状态(1)

ASP 中的 javascript asp教程 日期相关


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 244 ::
收藏到网摘: n/a

JavaScript is loosely typed. Database files are not. If you put text into a Boolean database column or a Boolean value into a date/time column, then you will get an error.

For the most part this is not a problem, except for date/time. It does not correspond to the JavaScript Date Object. So, we have to tear Date apart and rebuild it from scratch. If we don't, then we get a type mismatch error.

Take a look at the snippet below. (It's not part of our lesson, but I want you to look at it anyway.) Please notice DateTime.

objConn.Open(strConnect)
sql = "INSERT INTO FoloVisit (SessionID,VisitTime) "
sql+= "Values ('" + Session.SessionID + "',#" + DateTime + "#);"
objConn.Execute(sql)

DateTime has to be in a very particular format: #mm/dd/yyyy hh:mm:ss [a|p]m# As you well know new Date() doesn't even come close to this format. We will fix that in the script below.

Get Started:

Below is the script for Lesson 20.

<%@LANGUAGE="JavaScript"%>
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Dim VBTime,VBDate,VBDateTime
VBTime = Time & " "
VBDate = Date & " "
VBDateTime = Date & " " & Time
</SCRIPT>
<%
function whatTimeIsIt()	{	var m=new Date()	var minute=m.getMinutes()	var second=m.getSeconds()	var ampm=false	if (minute >=0 && minute < 10)	{ minute=("0" + minute)	}	if (second >= 0 && second < 10 )	{ second=("0" + second) }	var hours=m.getHours()	if (hours > 12)	{ ampm=true	hours=hours-12 }	if (hours==12)	{ ampm=true }	if (hours == 0)	{ hours=hours+12	ampm=false }	if (ampm)	{ ampm=" PM" }	else	{ ampm=" AM" }	var myTime=hours + ":" + minute + ":" + second + ampm	return myTime;	}
var DateTime = new Date();
var Month = (DateTime.getMonth() + 1) + "/";
var Day = DateTime.getDate() + "/";
var Year = DateTime.getFullYear();
var JustTheDate = Month + Day + Year;
var JustTheTime = whatTimeIsIt();
var DateTime = Month + Day + Year + " " + whatTimeIsIt();
Response.Write("<HTML>\r")
Response.Write("<STRONG>JavaScript Time</STRONG><BR>\r")
Response.Write("The date in proper database format is: " + JustTheDate + "<BR>\r")
Response.Write("The time in proper database format is: " + JustTheTime + "<BR>\r")
Response.Write("The date & time together are: " + DateTime + "<BR>\r")
Response.Write("<HR>\r")
Response.Write("<STRONG>VBScript Time</STRONG><BR>\r")
Response.Write("The date in proper database format is: " + VBDate + "<BR>\r")
Response.Write("The time in proper database format is: " + VBTime + "<BR>\r")
Response.Write("The date & time together are: " + VBDateTime + "<BR>\r")
Response.Write("</HTML>")
%>

Click Here to run the script in a new window.

Living on VBScript Time:

The other way to solve the problem is to use the VBScript date and time Objects. What can I say? If you can't beat 'em, steal from 'em!

Time For a Tangent:

If all you want to do is store new Date() exactly as-is in your database then do so in a text or memo column. The disadvantage of using this tactic is that SQL cannot sort items correctly by date and time. Instead, they'll be sorted by alphabetical order.

Final Thoughts:

That's the end of the lesson plan. I have received messages from all over the world. Thank you for your kind words. If you have questions or comments you can click onto the link for the home page and then there's a link to contact me.