作业【检查表单】

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title>写多一次表单验证</title>
    <style type="text/css"></style>
    <script type="text/javascript"></script>
</head>
<body>
    <form action="index.html" onsubmit="return checkForm()">
        <p>
            name<input type="text" name="userName" id="userName" onfocus="name_onfocus()" onblur="name_onblur()" />
            <span id="name_res"></span>
        </p>
        <p>
            pass&nbsp;&nbsp;<input type="password" name="userPassword" id="userPassword" onfocus="pass_onfocus()"  onblur="pass_onblur()"/>
            <span id="pass_res"></span>
        </p>
        <p>
            <input type="submit" value="submit" />
        </p>
    </form>
    <script>
        //用户名框获取焦点事件
        function name_onfocus(){
            //获取焦点则更改旁边的提示内容
            var name_res = document.getElementById("name_res");
            name_res.innerHTML = "<font color=‘red‘>请输入用户名</font>";
        }

        //密码框获取焦点事件
        function pass_onfocus(){
            var pass_res = document.getElementById("pass_res");
            pass_res.innerHTML = "<font color=‘red‘>请输入密码</font>";
        }

        //用户名输入框失去焦点
        function name_onblur(){
            //这里是获取用户名输入框旁边的span标签元素
            var name_res = document.getElementById("name_res");
            //获取用户名的value
            var name_value = document.getElementById("userName").value;
            //判断用户名的各种情况
            if(name_value.length == 0){//判断是否有输入用户名
                name_res.innerHTML = "<font color=‘red‘>你没有输入用户名</font>";
                return false;
            }else if(name_value.length < 5 || name_value.length > 18){//判断用户名的长度是否符合要求
                name_res.innerHTML = "<font color=‘red‘>用户名只能5-18位之间</font>";
                return false;
            }else if(!checkUser(name_value)){//判断用户名是否有非法字符
                name_res.innerHTML = "<font color=‘red‘>用户名含有非法字符</font>";
                return false;
            }else{
                name_res.innerHTML = " ";
                return true;
            }
        }

        //密码框失去焦点事件
        function pass_onblur(){
            //获取密码框旁边的span标签
            var pass_res = document.getElementById("pass_res");
            //获取密码的value
            var pass_value = document.getElementById("userPassword").value;
            //判断密码的各种情况
            if(pass_value.length == 0){//这是判断没有输入密码
                pass_res.innerHTML = "<font color=‘red‘>你没有输入密码</font>";
                return false;
            }else if(pass_value.length < 5 || pass_value.length > 18){//这是判断密码的长度
                pass_res.innerHTML = "<font color=‘red‘>密码只能5-18位之间</font>";
                return false;
            }else if(!checkUser(pass_value)){//判断密码是否有非法字符
                pass_res.innerHTML = "<font color=‘red‘>密码含有非法字符</font>";
                return false;
            }else{
                pass_res.innerHTML = " ";
                return true;
            }
        }

        //判断是否有非法符号
        function checkUser(user){
            var str = ["?",">","<","$","#","@","!"];//非法字符数组
            for(var i = 0 ; i<= user.length ; i++){
                for(var j = 0 ; j<= str.length ; j++){
                    //通过循环把用户名或者密码分别与非法字符匹配
                    if(user.charAt(i) == str[j]){
                        //找到非法字符则返回false
                        return false;
                    }
                }
            }
            return true;
        }

        //检查表单
        function checkForm(){
            var pass_flag    = pass_onblur();
            var name_flag   = name_onblur();
            //用户名和密码同时合法才能返回true
            if(pass_flag && name_flag){
                return true;
            }else{
                return false;
            }
        }
    </script>
</body>
</html>
时间: 2024-08-06 03:31:19

作业【检查表单】的相关文章

检查表单元素的值是否为空

1.概述 在实际的开发过程中,经常需要判断用户提交的表单中某个元素的值是否为空,还有一种情况是表单中所有元素的值都不允许为空.本实例将介绍一种简单有效的判断表单中所有元素是否为空的方法. 2.技术要点 主要是在JavaScript中通过循环form对象的elements属性来实现.form对象的elements属性也就是页面中form表单的所有元素的数组,例如,form.elements[0]表示表单第一个元素对象,form.elements[n]表示表单第n个元素对象. 3.具体实现代码 (1

【数据结构课程作业】单链表就地逆置

#include <stdio.h> #include <stdlib.h> typedef struct List { int val; struct List *next; }List; void InitList(List **h, List **t) { *h = (List *)malloc(sizeof(List));//*h就是头指针的地址 *t = (List *)malloc(sizeof(List));//*t就是尾指针的地址 if(!(*h) || !(*t)

jquery插件,表单验证validation plugin的使用

笔记: 一.首先引入插件 <script type="text/javascript" src="js/jquery-1.10.0.js" ></script> <script type="text/javascript" src="js/jquery.validate-1.13.1.js" ></script> 列子:一个简单的登录表单验证 1 <form id=&quo

HTML5实战 文摘 第二章 HTML5用于创建表单的输入小部件 数据绑定以及数据验证

HTML5表单在原有表单特性的基础上增加了一些比较便捷的特性,使得我们实现一些常用的表单的小部件.输入类型.输入验证不再那么大费周章.上一篇文章提到了HTML5实现的几种新的输入类型,现在我们更加详尽的了解HTML5的表单产生的新特性和功能. 1. 输入类型和输入属性 菜鸟教程上给出了HTML5新增加的input输入类型,可以在上面尝试一下不同类型的样子,基本可以满足日常开发需求了.类型不同会照成什么内在差异呢?主要有三点,首先,浏览器会根据输入类型进行基本的数据校验,例如type="email

ExtJs 第二章,Ext.form.Basic表单操作

1.认识Ext.form.Panel表单面板         Ext.form.field.CheckBox 复选框 checkboxfield Ext.form.CheckBoxGroup 复选框组 checkboxgroup Ext.form.field.ComboBox 下拉列表框 combo Ext.form.field.Date 日期选择框 datefield Ext.form.field.Display 文本展示组件 displayfield Ext.form.FieldContai

Zend_Form 创建、校验和解析表单的基础--(手冊)

1.  创建表单对象 创建表单对象很easy:仅仅要实现 Zend_Form: <?php $form = newZend_Form; ? > 对于高级用例.须要创建 Zend_Form 的子类,但对于简单的表单,程序能够用Zend_Form 的对象来创建. 假设想指定表单的动作和方法(总是好主意).用 setAction() 和 setMethod() 来完毕: <?php $form->setAction('/resource/process') ->setMethod(

js代码另类劫持登录表单

另类在哪呢?另类在页面自带一个外部js,劫持login这个function,而我恰能修改它下面的一个js(唯一一个,而且是废弃不用了的). 那个js里面的代码用了jQuery,把之后再加载的网页自身的function login给替换为自己的function. ========= 我的权限:可修改那个外部js下面的一个js,命运啊,偏偏我能那么做. -------------------------- 我js很菜的,现在这情况,居然也能发挥一下了,我把我能控制的js内容完全copy了那个外部js

正则 表单验证

电话号码验证 案例<fieldset> <legend>正则表单验证</legend> <form action method="post" target="_self" onsubmit="return checkform();"> <input name id="telephone" type="text" msg> <input nam

表单(上)EasyUI Form 表单、EasyUI Validatebox 验证框、EasyUI Combobox 组合框、EasyUI Combo 组合、EasyUI Combotree 组合树

EasyUI Form 表单 通过 $.fn.form.defaults 重写默认的 defaults. 表单(form)提供多种方法来执行带有表单字段的动作,比如 ajax 提交.加载.清除,等等.当提交表单时,调用 'validate' 方法来检查表单是否有效. 用法 创建一个简单的 HTML 表单.构建表单并给 id.action.method 赋值. <form id="ff" method="post"> <div> <lab