ajax技术的基本概述
大家都知道ajax并非一种新的技术,而是几种原有技术的结合体。它由下列技术组合而成。
1.使用CSS和XHTML来表示。
2. 使用DOM模型来交互和动态显示。
3.使用XMLHttpRequest来和服务器进行异步通信。
4.使用javascript来绑定和调用。
--------------------------------------------------------------------------------------------------------------------------------------------------
在上面几中技术中,除了XmlHttpRequest对象以外,其它所有的技术都是基于web标准并且已经得到了广泛使用的,XMLHttpRequest虽然目前还没有被W3C所采纳,但是它已经是一个事实的标准,因为目前几乎所有的主流浏览器都支持它。
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
var boo=false;
function sub(){
if(boo){
var f = document.getElementById("f1");
f.submit();
}
}
function val(obj){
var name = obj.value;
//alert(name);
if(name!=null){//按理还应该防护空串
document.getElementById("regName").value=name;
}
//document.getElementById("ff1").submit();
ff1.submit();//可以直接用id号来访问页面中的元素对象---该句等价于var f = document.getElementById("f1");
}
function back(res){
if(res==1){
boo = false;
msg.innerHTML="该用户名已存在,请换一个!";
}else{
boo = true;
msg.innerHTML="恭喜,该用户名可以注册!";
}
}
</script>
</head>
<body>
<h2>注册页面的表单验证----Ajax原理技术演示</h2>
<form id="f1" action="<%=path%>/RegServlet" method="post"><!--通过写一个RegServlet的java代码-->
Name:<input type="text" name="name" onblur="val(this);"/>
<label id="msg" style="color:red;"></label>
<br/>
Pwd:<input type="password" name="pwd"/><br/>
Tel:<input type="text" name="tel"/><br/>
QQ:<input type="text" name="qq"/><br/>
<input type="button" onclick="sub();" value="注册">
</form>
<!-- 专用于帮我们进行ajax提交用户名的小表单 -->
<form target="df" id="ff1" action="<%=path%>/ValServlet" method="post"><!--target必须是name属性,否则 不会显示 -->
<!--
<input id="regName" type="text" name="name" />
-->
<input id="regName" type="hidden" name="name" /><!--hidden是一个隐藏帧-->
</form>
<iframe name="df" > <!-- <iframe name="df" style="display:none; >这里是不展示出来-->
</iframe><!-- iframe标签是画中画-->
</body>
</html>
-----以上代码是通过在下面专门写一个ajax提交表单来验证信息的准确性来通过java代码重定向到另一个jsp页面中显示来显示信息--------------------------
最新文章
- C#添加测量运行时间
- EF &ndash; 1.模式
- Git Permission denied (publickey).
- HTML 的 <;div>; 和 <;span>; 标签
- 【译】C++工程师需要掌握的10个C++11特性
- PHP学习笔记04——数组
- VisualSVN_Server安装_配置图文教程
- 关于this的指向问题
- LINUX VPS 查看系统信息命令
- alsa音频驱动科普第一课
- [转载] 几张非常有意义的JavaScript基础学习思维图
- FPGA多时钟处理应用
- 一款好用的软件easyUI
- 逆向实战第一讲,寻找OllyDbg调试工具的Bug并修复
- bootstarp-fileinput上传 火狐防止拖入文件直接打开新页面
- 使用图片作为a标签的点击按钮时,当触发touchstart的时候,往往会有一个灰色的背景,想要去掉的话可以用下面这种方式
- Tomact高并发&;Servlet线程处理
- 如何在苹果手机上安装自制的AD证书
- Spring mvc session cookie实现自动登录
- python之路-----多线程与多进程