当前位置: 首页 > 图文教程 > 网络编程 > ASP > javascript asp教程第十三课--include文件

ASP
开辟一条自由ASP快车道
用XML结合数据库,给服务器减负。
纯编码实现数据库的建立或压缩
多个表单和多个图片一起上传完美解决方案
列表项可上下移动的Multiple列表
模拟QQ的下拉列表选择图象
利用FSO取得BMP,JPG,PNG,GIF文件信息(大小,宽、高等)
二级域名原理以及程序,申请即可开通.
利用ASP+XML架设在线考试系统
ASP项目中的通用条件查询模块
一个为字符串中的网址加上链接的程序例子
用Agent+ASP技术制作语音聊天室
多表单域无组件文件上传的例子
使用xmlhttp为网站增加股市行情查询功能
用ASP开发WEB日期选择器
javascript+HTML仿造VB里的MonthView控件
使用xmlHttp结合ASP,实现网页的异步调用
调用DirectX的组件实现的时钟
在ASP页里面注册DLL的VBScript CLASS
ASP程序界面的多语言支持

ASP 中的 javascript asp教程第十三课--include文件


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

Server Side Includes:

Experienced JavaScript programmers know that code reuse is good. Experienced JavaScript programmers also know that JavaScript functions are data types.

So, we should be able to store a JavaScript function inside a Session Variable or an Application Variable, right? Unfortunately, no. The way to reuse JavaScript functions across many 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 script13.asp. It calls for an include file via this line: <!--#include file="script13a.asp"--> I'll let you see the include file in a moment. But first, I reprinted 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 looks so nice and simple. You'd never know that the Date() object had been torn 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;	}
%>

Imagine that you had 50 pages that all need whatTimeIsIt(), findDayOfWeek(), DateTime, and Tomorrow. You wouldn't want 50 different copies of these functions and variables. No, you would rather have a single copy of these items so that you could manipulate the single copy and execute your updates to all 50 pages at once.

Now you know how to do that.

Moving Forward:

This concludes Section 03. Next up Server and Error objects in Section 04.