html表单 推荐书,JavaScript中Form表单技术汇总(推荐)

这里不进行很复杂的后台验证以及JavaScript的正则表达式,只是简单的介绍下这个技术,简单的后台接收与跳转,大概了解怎么验证的就可以。具体的技术,我后面还会继续写博客的。本人也还在学习中。

表单验证1-简单验证

进行简单的验证,用户名必须为abcd,密码长度必须大于等于6

然后根据用户输入的数据,在后面给出提示。

代码演示:

DHTML技术演示---表单验证

function checkUserName(){

//alert("aa");//测试这个失去焦点监听是否管用

var oUserNameNode = document.getElementsByName("userName")[0];

var name = oUserNameNode.value;//这个type="text"的value的值是方框内的字符

//以后有后台时,“abcd”这个数据应该通过ajax技术向后台要

//这里我们只是做简单的演示-就是填写的name必须是abcd

if(name=="abcd"){

document.getElementById("userNameSpan").innerHTML="用户名正确".fontcolor("green");

}else{

document.getElementById("userNameSpan").innerHTML="用户名错误".fontcolor("red");

}

}

function checkPwd(){

var oUserPwdNode = document.getElementById("pwd")[0];

var pwd=oUserPwdNode.value;

if(pwd.length>=6){

document.getElementById("userPwdSpan").innerHTML="密码格式符合要求".fontcolor("green");

}else{

document.getElementById("userPwdSpan").innerHTML="密码长度必须大于等于6".fontcolor("red");

}

}

用户名:

密码:

360浏览器8.1 演示结果:

85dcef41ca79b1405b1f7f3871c538d0.png

用户名不符合规则:

80952cf9318059eed3cf907f032219b2.png

密码不符合规则:

05e4af8bfa9b5ee31317c7d8c3cd35f1.png

注册表单的验证2-正则表达式

代码演示:

DHTML技术演示---注册表单的验证--js中使用正则表达式

function checkUserName(){

var oUserNameNode = document.getElementsByName("userName")[0];

var userName = oUserNameNode.value;

//用正则检验

var reg = new RegExp("[a-z]{4}", "i");//包含4个连续的字母就可以,注意"i"的双引号不能省略

//i---表示忽略大小写

//var regg =new RegExp("^[a-z]{4}$","i") ;//只含4个连续的字母,注意"i"中的双引号不能省略

//^代表开始 $代表结束

var oUserNameSpan = document.getElementById("userNameSpan");

//alert(reg.test(userName));

if (reg.test(userName)) {

oUserNameSpan.innerHTML = "用户名格式正确".fontcolor("green");

}

else {

oUserNameSpan.innerHTML = "用户名格式错误".fontcolor("red");

}

}

//var reg = /^[0-9]{6}$/ ; //法一

var reg = new RegExp("^[0-9]{6}$");//法二

var str = "123456";

var bRes = reg.test(str);

//111使用正则表达式对象中的方法进行验证---只能用于判断是否匹配,功能类似于Java中的String类中的matches()方法

//alert(bRes);//true

//222使用String对象中的方法进行正则检验---功能更强大,类似于Java当中的Matcher工具

var res = str.match(reg);//匹配的结果保存在res(是一个数组)中,如果没有匹配到则res为null。

//alert(res);//123456

//match方法返回的数组有三个属性:input、index和lastIndex。

//★一点细节---使用new RegExp()方式时,特殊字符要转义

//var reg2 =/^\d{6}$/; //"\"不需要转义

var reg2= new RegExp("^\d{6}$");//※※※注意"\"要转义

//▲▲▲上面那句是错误的,必须要写成:new RegExp("^\\d{6}$")

//alert( reg2.test("123456") );

用户名:

360浏览器8.1 演示结果:

只需要包含连续4个字母就可以了。

74383914ed4021e8dccced982e84240c.png

cff90350e29e52362b32b3ec53801483.png

注册表单的验证且控制提交–前端校验:

代码文件创建位置:

f4e1e7ad52c43e980ccfcceffafa9bb9.png

代码演示:

3form3.html

DHTML技术演示---注册表单的验证且控制提交--前端校验

function checkUserName(){

var oUserNameNode = document.getElementsByName("userName")[0];

var userName = oUserNameNode.value;

//用正则检验

var reg = new RegExp("[a-z]{4}","i");//包含4个连续的字母就可以,注意"i"的双引号不能省略

//i---表示忽略大小写

//var regg =new RegExp("^[a-z]{4}$","i") ;//只含4个连续的字母,注意"i"中的双引号不能省略

//^代表开始 $代表结束

var oUserNameSpan = document.getElementById("userNameSpan");

if(reg.test(userName)){

oUserNameSpan.innerHTML="用户名格式正确".fontcolor("green");

return true;

}else{

oUserNameSpan.innerHTML="用户名格式错误".fontcolor("red");

return false;

}

}

function checkPwd(){

var oUserPwdNode = document.getElementsByName("pwd")[0];

var pwd = oUserPwdNode.value;

var reg2 = new RegExp("^[\\w\\d]{6,9}$");

if(reg2.test(pwd)){

document.getElementById("userPwdSpan").innerHTML="密码格式符合要求".fontcolor("green");

return true;

}else{

document.getElementById("userPwdSpan").innerHTML="密码长度必须是6-9位的数字字母或下划线".fontcolor("red");

return false;

}

}

function checkUser(){

if(checkUserName() && checkPwd() ){//如果还有其他项需要在提交前验证,直接把那个验证函数写这里就行

return true;

}else{

return false;

}

}

用户名:

密码:


用户名:

密码:

function mySubmit(){

var oFormNode = document.getElementById("userinfo");

if(checkUserName2()&&checkPwd2()){

oFormNode.submit();//submit 提交表单。

}

}

function checkUserName2(){

var oUserNameNode = document.getElementsByName("userName")[1];

var userName = oUserNameNode.value;

//用正则检验

var reg = new RegExp("[a-z]{4}","i");//包含4个连续的字母就可以,注意"i"的双引号不能省略

//i---表示忽略大小写

//var regg =new RegExp("^[a-z]{4}$","i") ;//只含4个连续的字母,注意"i"中的双引号不能省略

//^代表开始 $代表结束

var oUserNameSpan = document.getElementById("userNameSpan2");

if(reg.test(userName)){

oUserNameSpan.innerHTML="用户名格式正确".fontcolor("green");

return true;

}else{

oUserNameSpan.innerHTML="用户名格式错误".fontcolor("red");

return false;

}

}

function checkPwd2(){

var oUserPwdNode = document.getElementsByName("pwd")[1];

var pwd = oUserPwdNode.value;

var reg2 = new RegExp("^[\\w\\d]{6,9}$");

if(reg2.test(pwd)){

document.getElementById("userPwdSpan2").innerHTML="密码格式符合要求".fontcolor("green");

return true;

}else{

document.getElementById("userPwdSpan2").innerHTML="密码长度必须是6-9位的数字字母或下划线".fontcolor("red");

return false;

}

}

show.jsp:

这是注册后的显示页面

out.println(request.getAttribute("uName"));

out.println(request.getAttribute("pwd"));

%>

for(int i=0;i<3;i++){

//这个下面可以写html代码

%>

欢迎

//这个上面可以写html代码

}

%>

RegServlet.Java

这个是new一个Servlet。

会自动给我们配好web.xml

325c36b33868c88085ff0b33801d13e9.png

package cn.hncu.user;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class RegServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doPost(request, response);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

request.setCharacterEncoding("utf-8");//设置编码

String name = request.getParameter("userName");//userName为提交过来的表单中的一个input的name属性

String pwd = request.getParameter("pwd");

//System.out.println(name);

request.setAttribute("uName", "hncu---"+name);

request.setAttribute("pwd", "pwd---"+pwd);

request.getRequestDispatcher("/dhtml/6formsubmit/jsps/show.jsp").forward(request, response);

//输出,导向另外的页面显示

}

}

web.xml

xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

This is the description of my J2EE component

This is the display name of my J2EE component

RegServlet

cn.hncu.user.RegServlet

RegServlet

/servlet/RegServlet

index.jsp

360浏览器8.1 演示图片:

4ca4644d889a6a772f51df3d397bec21.png

当格式都填写正确时,点注册按钮,自动跳转到另外的页面。

8d8437a65a8adb58e53880979572eb1c.png

有一个格式错误时,点注册按钮不会有反应的。

89c519473142283c3479cadb67c8b179.png

f24711d59cc6ac23045ff4a55234d880.png

注册表单的验证且控制提交–前端校验–最终版本:

代码演示:

DHTML技术演示---注册表单的验证且控制提交--前端校验--最终版本

function check(name,reg,spanId,okInfo,errInfo){

var value = document.getElementsByName(name)[0].value;

//用正则检验

var oSpanNode = document.getElementById(spanId);

if(reg.test(value)){

oSpanNode.innerHTML=okInfo.fontcolor("green");

return true;

}else{

oSpanNode.innerHTML=errInfo.fontcolor("red");

return false;

}

}

function checkUserName(){

var reg = new RegExp("[a-z]{4}","i");//包含4个连续的字母,注意"i"中的双引号不能省略

return check("userName",reg,"userNameSpan","用户名格式正确","用户名格式错误");

}

function checkPwd(){

var reg = new RegExp("^[\\w\\d]{6,9}$");

return check("pwd",reg,"userPwdSpan","密码格式符合要求","密码长度必须是6-9位的数字字母或下划线");

}

function checkPwd2(){

var flag;

var pwd = document.getElementsByName("pwd")[0].value;

var pwd2 = document.getElementsByName("pwd2")[0].value;

var oSpanNode = document.getElementById("userPwd2Span");

if(pwd==pwd2){

oSpanNode.innerHTML="两次密码一致".fontcolor("green");

flag = true;

}else{

oSpanNode.innerHTML="两次密码不一致".fontcolor("red");

flag = false;

}

return flag;

}

function checkMail(){

var reg = /^\w+@\w+(\.\w+)+$/i;

return check("mail",reg,"userMailSpan","邮箱格式正确","邮箱格式不正确");

}

function checkUser(){//控制表单的提交

if(checkUserName() && checkPwd() && checkPwd2() && checkMail() ){

return true;

}else{

return false;

}

}

用户名:

输入密码:

确认密码:

邮件地址:

360浏览器8.1 演示结果:

2340296ad789e6d9b4273b25d1e32eaf.png

只有全部格式填写正确后再点注册按钮才会有响应。

6322a9882b0b20d25e096304b3e0fbd9.png

全部格式填写正确后,点注册按钮后的页面,其实就是跳到show.jsp页面了。(自己可以随便定位到哪的)

以上所述是小编给大家介绍的JavaScript中Form表单技术汇总(推荐)的相关知识,希望对大家有所帮助,如果大家有疑问欢迎给我留言,小编会及时回复大家的!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值