案例3-2 使用XHTML语法规则实现Web页面
在Eclipse中新建一个项目,项目的名称为“P32_XHTML”。在该项目中新建一个HTML文档,页面的源代码如下:
源程序名称:regist.html
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>regist.html</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script language="JavaScript" type="text/javascript" src="check.js"></script>
</head>
<body>
<center>
<form name="myform" action="">
<p>
请输入您的姓名:
<input type="text" name="txt1" value="" />
</p>
<p>
请选择您的性别:
</p>
<p>
男
<input type="radio" value="男" name="sex" checked="checked" />
</p>
<p>
女
<input type="radio" value="女" name="sex" />
</p>
<p>
请选择您的爱好:
</p>
<p>
游泳
<input type="checkbox" value="游泳" name="inst" checked= "checked" />
</p>
<p>
滑冰
<input type="checkbox" value="滑冰" name="inst" />
</p>
<p>
散步
<input type="checkbox" value="散步" name="inst" />
</p>
<p>
<input type="button" value="注册" onclick="checkValid()" />
</p>
</form>
</center>
</body>
</html>
注意在上面的程序代码中按照XHTML语法规则书写的方式,页面首行为文档类型的声明,对应的标记都进行了关闭,属性声明采用的是完整规范的声明方式。文档类型声明中所使用的这些规则存储在一个称为“文档类型声明(Document Type Declaration,DTD)”的单独文档中,并且使用这些规则验证XHTML文档结构的准确性。准确地说,DTD的目的是描述XHTML中允许的语言和语法。
<html>标记声明中必须包括带有“xmlns=http://www.w3.org/1999/xhtml ”属性的 XML 名称空间的标识。XML名称空间标识 XHTML 文档使用的标记范围。它用来确保一个 DTD 使用的名称不与用户定义的标记或其他 DTD 中定义的标记冲突。
由于在过渡时期XHTML对JavaScript脚本的使用有限制,所以在本例中对于JavaScript脚本的处理采用单独放在一个文件中的方式,对应的JavaScript脚本文件如下:
源程序名称:check.js
function checkValid()
{
if(document.myform.txt1.value=="")
{
alert("请输入姓名!");
}
else
{
alert("姓名:"+document.myform.txt1.value );
for(i=0;i<document.myform.sex.length;i++)
{
if(document.myform.sex(i).checked == true)
alert("性别:"+document.myform.sex(i).value);
}
for(i=0;i<document.myform.inst.length;i++)
{
if(document.myform.inst(i).checked == true)
alert("爱好:"+document.myform.inst(i).value);
}
}
}
该页面的效果如图3-9所示。
这是一个简单的注册登记页面,并进行了数据有效性的基本检查。在XHTML中事件驱动的处理机制与HTML相同,这里不再赘述。对应的项目目录结构如图3-10所示。







