一个Web开发的客户端基础技术测试Demo

简介:

最近参加了一个Web开发的客户端基础技术测试,虽然对于做前台开发的程序员来说比较简单,但对于一直做后台代码编写的程序员想掌握前台开发的基础来说,应该是一个比较好的Demo。对于Web初学者来说,也是一个概括比较全的示例。

先看看具体要求,这里直接把测试要求发了上来。需要注意的是,不能使用Dreamware或者Visual Studio智能工具,最好使用记事本纯手工编写,最多使用EditPlus辅助一下。

WEB开发的客户端基础技术测试要求

下面是我所完成的一个效果:


下面是我的实现代码:
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
< HTML >
< HEAD >
< TITLE > 用户注册  </ TITLE >
< META  http-equiv ="Content-Type"  content ="text/html; charset=gb2312"   />
< META  NAME ="Author"  CONTENT ="" >
< META  NAME ="Keywords"  CONTENT ="" >
< META  NAME ="Description"  CONTENT ="" >

<!--  <LINK rel="stylesheet" type="text/css" href="style/style.css">  -->
< style  type ="text/css" >    /*  CSS 的设置  */
 
/*  input 的设置  */
.myText
{ border-width:1px; border-color:green; color:blue}
 
/*  input 的 Button 设置  */
.myButton
{ border-width:1px; border-color:blue; color:white; font-weight:bold; background-color:"#abcdef" }
 
/*  表格的标题 Caption 设置  */
.myCaption
{ font-size:25px; font-family:"宋体"; font-weight:bold; }
 
/*  Table 的设置  */
.myTable
{ font-size:14px; font-family:"宋体"; border-style:double; border-width:4px; border-color:black;}
 
/* 标题文本的设置  */
.myTitle
{ font-size:16px; font-weight:bolder;background-color="#fedcba" }
 
/* 提示文本的设置  */
.myReg
{ font-size:12px; font-style:italic; color:red;}
 
/* HTML标识的设置  */
a
{ font-size:14px; text-decoration:underline;}
 
/* 锚伪类的设置  */
a:link
{text-decoration:none;}  /* 去掉下划线  -普通状态,没有任何操作- */
a:visited
{border:1px solid #999999;}  /* border相关的3个属性的设置  -使用后的状态- */
a:hover
{}   /*  -鼠标悬停状态- */
a:active
{border-color:gray;}   /*  -鼠标点击后的状态- */

</ style >

<!--  <script src="test.js" ></script>  -->
< script  language ="JavaScript" >    /*  JavaScript 的设置  */
 
function myRusult()
 
{

    
// 判断用户名的格式 
    var user = document.getElementById("userName").value; // 根据 ID 获取文本  innerText
    //var user = document.form.userName.value;            // 根据 name 获取文本
    if( user.length < 8 )
    
{
       window.alert(
"用户名长度小于8位!");
       
return false;
    }


    
// 判断密码的格式 
    var psw = document.form.passWord.value;
    
if( psw.length < 8 || isNaN(psw)==false )
    
{
        window.alert(
"密码长度不能小于8位,并且不能全部为数字!");
       
return false;
    }


    
// 判断重复密码的格式 
    var repsw = document.form.repassword.value;
    
if( repsw != psw)
    
{
       window.alert(
"密码不一致!");
       
return false;
    }
 

    
// 判断性别的格式 
     var subject = "";
    
forvar i=0; i<document.form.sex.length; i++)
    
{
        
if(document.form.sex[i].checked)
        
{
            subject 
= document.form.sex[i].value;
            
break;
        }
  
    }

    
if( subject == "")
    
{
       window.alert(
"请选择性别!");
       
return false;
    }


    
// 判断年龄的格式
    var index = document.form.age.selectedIndex;
    
var uage = document.form.age.options[index].value;
    
if( uage == "")
    
{
        window.alert(
"请选择年龄!");
        
return false;
    }


    
// 职业的选择累加
    var jobs = "";
    
for(var i=0;i<document.form.selectJob.options.length;i++)
    
{
        
if(document.form.selectJob.options[i].selected ==true)
        
{
            jobs 
+= document.form.selectJob.options[i].text; //text    取出其文本,也可以取value
        }

    }

    
if(jobs == "")
    
{
        window.alert(
"请选择职业!");
          
return false;
    }


    
// 判断是否上传的是*.jpg的图片
    var myFile = document.form.File.value;
    
var str = myFile.substr( myFile.lastIndexOf("."+ 1);
    
if( str.toLowerCase() != "jpg" )
    
{
        window.alert(
"上传的文件必需是*.jpg的文件!");
        document.form.File.focus();
        
return false;
    }


    
// 判断个性签名是否在500个字符内
    var myTextarea = document.form.qianming.value;
    
if(myTextarea.length > 200)
    
{
        window.alert(
"个性签名不能大于200个字符!");
        document.form.qianming.focus();
        
return false;
    }


    
return true;
 }


 
function myClose()
 
{
    
if(confirm("是否关闭窗口?"))
    
{
       window.opener 
= null;
       window.close();
    }

 }

</ script >
</ HEAD >

< BODY >
< align ="center" >
< href ="Index.htm" >返回首页 </ a >
< href ="UserLogin.htm" >登录 </ a >
</ p >
< form   method ="post"  name ="form"  onSubmit ="return myRusult();"  action ="DoReg.htm" >
< Table  border ="1px"  cellspacing ="0"  align ="center"  class ="myTable" >
   < caption  align ="top"  class ="myCaption" >填写会员注册资料 </ caption >

   < tr >
       <!--  HTML中的颜色设置 bgcolor="#CBCBCB"  -->
       < td  class ="myTitle" >用户名: </ td >
       < td >< input  type ="text"  name ="userName"  id ="userName"  value =""  class ="myText" ></ input ></ td >
       < td  class ="myReg" >非空,不少于八位字符 </ td >
   </ tr >

   < tr >

       < td  class ="myTitle"   >密码: </ td >
       < td >< input  type ="password"  name ="passWord"  value =""  class ="myText" ></ td >
       < td  class ="myReg" >非空,不少于八位字符,不得为纯数字字符 </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >确认密码: </ td >
       < td >< input  type ="password"  name ="repassword"  value =""  class ="myText" ></ td >
       < td  class ="myReg" >与密码一致 </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >性别: </ td >
       < td >< input  type ="radio"  name ="sex"  value ="man"   >
           < input  type ="radio"  name ="sex"  value ="woman"   >
       </ td >
       < td  class ="myReg" >必须选择其中之一 </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >婚否: </ td >
       < td >< input  type ="checkbox"  name ="hun"  value ="hun" ></ td >
       < td > &nbsp </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >年龄: </ td >
       < td >< select  name ="age" >
             < option  value ="" >  -------   </ option >
             < script >
                
for(var i=18;i<61;i++)
                
{
                   document.write(
"<option value='"+ i +"'>"+ i +"岁</option>");
                }

            
</ script >
           </ select >
       </ td >
       < td  class ="myReg" >必须提供 </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >职业: </ td >
       < td >
           < select  name ="selectJob"  value ="selectJob"  multiple ="true"   >
               < option  >人事管理 </ option >
               < option  >电脑相关 </ option >
               < option  >金融相关 </ option >
                  < option  >物流管理 </ option >
               < option  >教育事业 </ option >
           </ select >
       </ td >
       < td > &nbsp </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >相片: </ td >
       < td >< INPUT  type ="file"  name ="File"  id ="File"  class ="myText" >
           </ td >
       < td  class ="myReg" >相片文件必须是JPG图片*.jpg </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" >个性签名: </ td >
       < td >
            < textarea  name ="qianming"  cols ="20"  rows ="5"  class ="myText" ></ textarea >
       </ td >
       < td  class ="myReg" >不超过200个字符 </ td >
   </ tr >

   < tr >
       < td  class ="myTitle" > &nbsp </ td >
       < td > 
           < input  type ="submit"  name ="submit"  value ="确认注册"  class ="myButton" ></ input >
           < input  type ="reset"   name ="reset"  value ="重新填写"  class ="myButton" ></ input >
           < input  type ="button"   name ="btnClose"  value ="关闭窗口"  class ="myButton"  onclick ="myClose();"  href ="" ></ input >
       </ td >
       < td > &nbsp </ td >
   </ tr >
</ Table >
< form >
</ BODY >
</ HTML >

相关说明:

为了简单起见,我将Javascript CSS 都集成到HTML 当中来了。在实际的开发中,建议还是将他们分别用单独的文件存放,再在HTML 中引用进来。

CSS 的外部引用:
HTML<head>中添加<link rel="stylesheet" type="text/css" href="style.css">,然后把CSS 写在style.css文件中即可。

Javascript 的外部引用:
HTML<head>中添加<script type="text/javascript" src="Queue.js"></script>,然后把Javascript 写在Queue.js文件中即可。

也可以动态加载JS脚本(参考)
动态加载JS脚本的4种方法
如何在HTML文件中正确的引用js文件中的函数

另外,为了阅读的方便,我在代码中添加了许多的注释。关于注释,在HTMLJavascript CSS 中都有所差异:

        HTML 中使用: <!-- HTML的注释 -->

Javascript 中使用: /*  JavaScript的注释  */     // JavaScript的注释

           CSS 中使用: /*  CSS的注释  */

关于HTMLJavascript CSS 的注释是我在应用后的总结,错漏之处还请斧正!)




本文转自钢钢博客园博客,原文链接:http://www.cnblogs.com/xugang/archive/2008/05/12/1193506.html,如需转载请自行联系原作者


相关文章
|
17天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
22天前
|
监控 JavaScript 前端开发
《理解 WebSocket:Java Web 开发的实时通信技术》
【4月更文挑战第4天】WebSocket是Java Web实时通信的关键技术,提供双向持久连接,实现低延迟、高效率的实时交互。适用于聊天应用、在线游戏、数据监控和即时通知。开发涉及服务器端实现、客户端连接及数据协议定义,注意安全、错误处理、性能和兼容性。随着实时应用需求增加,WebSocket在Java Web开发中的地位将更加重要。
|
1月前
|
Web App开发 前端开发 开发工具
介绍Web开发的基础知识
介绍Web开发的基础知识
29 7
|
1月前
|
安全 测试技术
现代软件测试中的自动化技术应用及挑战
在当今数字化时代,软件测试的重要性日益凸显。本文探讨了现代软件测试中自动化技术的应用现状和挑战,分析了自动化测试在提高效率、降低成本、增强可靠性等方面的优势,同时也提出了自动化测试所面临的挑战和解决方案。
|
1天前
|
前端开发 JavaScript UED
Web前端开发:探索技术与艺术的交融
Web前端开发:探索技术与艺术的交融
8 1
|
2天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
|
4天前
|
XML Web App开发 测试技术
python的Web自动化测试
【4月更文挑战第16天】Python在Web自动化测试中广泛应用,借助Selenium(支持多浏览器交互)、BeautifulSoup(解析HTML/XML)、Requests(发送HTTP请求)和Unittest(测试框架)等工具。测试步骤包括环境搭建、编写测试用例、初始化浏览器、访问页面、操作元素、验证结果、关闭浏览器及运行报告。注意浏览器兼容性、动态内容处理和错误处理。这些组合能提升测试效率和质量。
11 6
|
8天前
|
JSON Java fastjson
Spring Boot 底层级探索系列 04 - Web 开发(2)
Spring Boot 底层级探索系列 04 - Web 开发(2)
16 0
|
8天前
|
安全 编译器 PHP
PHP 8.1版本发布:引领Web开发新潮流
PHP编程语言一直是Web开发的主力军,而最新发布的PHP 8.1版本则为开发者们带来了更多创新和便利。本文将介绍PHP 8.1版本的主要特性,包括更快的性能、新的语言功能和增强的安全性,以及如何利用这些功能来提升Web应用程序的质量和效率。
|
11天前
|
PHP
web简易开发——通过php与HTML+css+mysql实现用户的登录,注册
web简易开发——通过php与HTML+css+mysql实现用户的登录,注册