javascript asp教程第13課-includeファイル


Server Side Includes:
Experienced JavaScript programmers know that code reuse is good.Experienced JavaScript programmers also JavaScript functions are data types.
So,we shound be able to store a JavaScript function inside a Session Varable or an Application Varable,right?Unfortunary,no.The way to reuse JavaScript functions acrons pages is to use SSI:Server Side Includes.
<%@LANGUAGE="JavaScript"%>
<HTML>
<HEAD>
<!--#include file="script13a.asp"-->
<TITLE><% Response.Write( whatTimeIsIt() ) %> </TITLE>
</HEAD>
<BODY>
<%
Response.Write("The date and time are " + DateTime + "<BR><BR>\r")
Response.Write("Tomorrow's date is " + Tomorrow + "<BR><BR>\r")
Response.Write("Tomorrow will be a " + findDayOfWeek(Tomorrow) + "\r")
%>
</BODY>
</HTML>
Click Here to run the script in a new window.
Look at the code for script 13.asp.It cals for an include file via this line:<!--啯啯include file=「script 13 a.asp」->I'll let you see the include file in a moment.But first,I represt the client-side code directly below.
<HTML>
<HEAD>

<TITLE>10:57:20 AM </TITLE>
</HEAD>
<BODY>
The date and time are 4/11/2003 10:57:20 AM<BR><BR>
Tomorrow's date is 4/12/2003<BR><BR>
Tomorrow will be a Saturday

</BODY>
</HTML>
The final HTML code look s so nice and simple.You'd never know that the Date()oject had been ton down and put back together.Below is the include file.
<%
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 DateTime = Month + Day + Year + " " + whatTimeIsIt();

var Tomorrow=new Date()
Tomorrow.setDate(Tomorrow.getDate() + 1)
Month = (Tomorrow.getMonth() + 1) + "/"
Day = Tomorrow.getDate() + "/" 
Year = Tomorrow.getFullYear()
Tomorrow = Month + Day + Year

function findDayOfWeek(DateInQuestion)
	{

	// format for DateInQuestion is mm/dd/yyyy or m/d/yyyy 
	// and presumes the /'s are present.	

	myRegExp=/\d{1,2}\//
	myMonth=(parseInt(DateInQuestion.match(myRegExp)) -1)

	myRegExp=/\/\d{1,2}\//
	myDay=new String(DateInQuestion.match(myRegExp))
	myDay=parseInt( myDay.substring(1,myDay.length) )

	myRegExp=/\/\d{4}/
	myYear=new String(DateInQuestion.match(myRegExp))
	myYear=parseInt( myYear.substring(1,myYear.length) )

	DateInQuestion=new Date(myYear,myMonth,myDay)
	
	DayOfWeek=new Array
	DayOfWeek[0]="Sunday"
	DayOfWeek[1]="Monday"
	DayOfWeek[2]="Tuesday"
	DayOfWeek[3]="Wednesday"
	DayOfWeek[4]="Thursday"
	DayOfWeek[5]="Friday"
	DayOfWeek[6]="Saturday"
	DayOfWeek=DayOfWeek[DateInQuestion.getDay()]

	return DayOfWeek;
	}
%>
Imaginee that a a t had 50 pages at t aaat aaat aaaaattned whatTimeIsIt、findDayOfWeek()、Datetitime、and Tomomorow.You wouldn't want 50 differentcopis of these functititions andand variablles.No.No.eethethethethethethengthethethethengthethethethethethetheininininininininininininininininininininininininininininininininininininininininininininininininininininingggggggggggto all 50 pages a t once.
Now you know how to do that.
Moving Forward:
This concludes Section 03.Next up Server and Error object in Section 04.