Javascript实例教程(5) 在一个表单中设置和检查Cookies
类别: JavaScript教程
Cookie是一小段由浏览器储存起来帮助识别用户身份的信息。在一个表单中设置和检查Cookies的实现需要两个文件来完成。第一个文件为cookie1.html,这个文件需要有一些机理(下面例子的一个按钮)来检查是否有一个Cookie存在,然后再重定向至表单网页或者文档下载网页。而第二个文件,即表单网页(cookie2.html),也是和重要的因为你将要在上面使用一点点JavaScript来设置Cookie,这个设置是在提交表单之前做的。下面给出这文件:
第一个文件(cookie1.html)
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function cookieRedirect(hasCookieURL, noCookieURL)
{
var currentCookie = document.cookie;
if (currentCookie.indexOf("formcomplete=yes") != -1) {
window.location = hasCookieURL;
} else {
window.location = noCookieURL;
}
}
// -->
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="docdownload">
<INPUT TYPE="BUTTON" VALUE="Download document"
onClick="cookieRedirect('doc.html', 'cookie2.html')">
</FORM>
</BODY>
</HTML>
第二个文件(cookie2.html ) <HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function sendForm(objForm)
{
cookieExpires = "Saturday, 01-Jan-03 00:00:00 GMT";
document.cookie = "formcomplete=yes; path=/";
// objForm.submit();
}
// -->
</SCRIPT>
</HEAD>
<BODY>
<FORM ACTION="test.html" NAME="info">
<TABLE>
<TR>
<TD>First name</TD>
<TD><INPUT TYPE="TEXT" NAME="firstname"></TD>
</TR>
<TD>Last name</TD>
<TD><INPUT TYPE="TEXT" NAME="lastname"></TD>
</TR>
<TR>
<TD>Address</TD>
<TD><INPUT TYPE="TEXT" NAME="address"></TD>
</TR>
<TR>
<TD>City</TD>
<TD><INPUT TYPE="TEXT" NAME="city"></TD>
</TR>
<TR>
<TD>State</TD>
<TD><INPUT TYPE="TEXT" NAME="state"></TD>
</TR>
<TR>
<TD>Zip</TD>
<TD><INPUT TYPE="TEXT" NAME="zip"></TD>
</TR>
</TABLE>
<INPUT TYPE="BUTTON" VALUE="Download document"
onClick="sendForm(document.testform)">
</FORM>
</BODY>
</HTML>
下面再给出需要用到的doc.html文件:
doc.html
<HTML>
<BODY>
<H3>This is the document</H3>
</BODY>
</HTML>
为了测试一下这个功能,你可以打开cookie1.html并点击中按钮,你将被带到表单网页。如果你回到cookie1.html文件并点击按钮你就回直接连到文档去。
第一个文件(cookie1.html)
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function cookieRedirect(hasCookieURL, noCookieURL)
{
var currentCookie = document.cookie;
if (currentCookie.indexOf("formcomplete=yes") != -1) {
window.location = hasCookieURL;
} else {
window.location = noCookieURL;
}
}
// -->
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="docdownload">
<INPUT TYPE="BUTTON" VALUE="Download document"
onClick="cookieRedirect('doc.html', 'cookie2.html')">
</FORM>
</BODY>
</HTML>
第二个文件(cookie2.html ) <HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function sendForm(objForm)
{
cookieExpires = "Saturday, 01-Jan-03 00:00:00 GMT";
document.cookie = "formcomplete=yes; path=/";
// objForm.submit();
}
// -->
</SCRIPT>
</HEAD>
<BODY>
<FORM ACTION="test.html" NAME="info">
<TABLE>
<TR>
<TD>First name</TD>
<TD><INPUT TYPE="TEXT" NAME="firstname"></TD>
</TR>
<TD>Last name</TD>
<TD><INPUT TYPE="TEXT" NAME="lastname"></TD>
</TR>
<TR>
<TD>Address</TD>
<TD><INPUT TYPE="TEXT" NAME="address"></TD>
</TR>
<TR>
<TD>City</TD>
<TD><INPUT TYPE="TEXT" NAME="city"></TD>
</TR>
<TR>
<TD>State</TD>
<TD><INPUT TYPE="TEXT" NAME="state"></TD>
</TR>
<TR>
<TD>Zip</TD>
<TD><INPUT TYPE="TEXT" NAME="zip"></TD>
</TR>
</TABLE>
<INPUT TYPE="BUTTON" VALUE="Download document"
onClick="sendForm(document.testform)">
</FORM>
</BODY>
</HTML>
下面再给出需要用到的doc.html文件:
doc.html
<HTML>
<BODY>
<H3>This is the document</H3>
</BODY>
</HTML>
为了测试一下这个功能,你可以打开cookie1.html并点击中按钮,你将被带到表单网页。如果你回到cookie1.html文件并点击按钮你就回直接连到文档去。
-= 资 源 教 程 =-
文 章 搜 索