myAjax(隐藏帧技术)
来源:互联网 发布:linux date格式 编辑:程序博客网 时间:2024/06/03 18:20
ajax属于浏览器的点上通讯,即它不是浏览器的整个页面与服务器通讯,而是浏览器页面的一部分。它能达到整个页面原来的信息不被冲掉,而且能及时的增加提示信息。这一点在实际项目中有应用,如注册信息的实时提示等。今天主要是用底层方式模拟ajax。
index.jsp中的主要代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>演示jsp技术</title> <script type="text/javascript"> function copyVal(obj){ if(obj.name=="name"){ valName.value=obj.value; valName.name = name2; }else if(obj.name=="pwd"){ valPwd = obj.value; valName.name = pwd2; } form2.submit(); } function info(str){ msgName.innerHTML=str; } </script> </head> <body> <h3>演示myAjax技术</h3> <!-- 真正的表单数据,label标签用于最后在组件后增加消息提示 --> <form action="/jspDemo2/servlet/LoginServlet" method="post"> 账号:<input type="text" name="name" onblur="copyVal(this)" /> <label id="msgName"></label><br/> 密码:<input type="password" name="pwd" onblur="copyVal(this)" /> <label id="msgPwd"></label><br/> <input type="submit" value="登录"/> </form> <!-- iframe子页面,servlet信息真正反馈的地方。隐藏iframe --> <iframe name="dataFrame" style="display: none"></iframe> <!-- 因为form组件一提交,原来没填完的数据会被冲掉,所以得弄一个拷贝表单,保证验证的同时原来组件内容不懂 值得一提的是,拷贝表单需指定一个target属性,告诉浏览器将内容填充到子页面 --> <form action="/jspDemo2/servlet/LoginServlet" method="post" id="form2" target="dataFrame"> <input type="hidden" id="valName"/> </form> </body></html>
servlet的主要代码:
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); String singleName = request.getParameter("name2"); String singlePwd = request.getParameter("pwd2"); 验证............. request.setAttribute("msg", str); request.getRequestDispatcher("/jsps/regResult.jsp").forward(request, response); out.println(" </BODY>"); out.println("</HTML>"); out.flush(); out.close(); }
regResult.jsp的主要代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>结果页面</title> </head> <body> <h3>这是结果页面</h3> ${msg } <script type="text/javascript"> var info = '<%=request.getAttribute("msg") %>'; parent.info(info); </script> </body></html>
0 0
- myAjax(隐藏帧技术)
- Web---监听用户名注册技术-myAJax-隐藏帧
- jsp技术:day2--jsp的几个容器、myAjax(隐藏帧技术)底层原理、jsp的三代开发技术
- myAjax方法
- Ajax隐藏帧技术
- 文件隐藏技术(一)
- 文件隐藏技术(二)
- DLL隐藏技术(抹链)
- plc (数据丢失隐藏技术)
- 菜鸟也封装之myAJAX
- MyAjax服务端框架系列:概述
- 木马各种隐藏技术
- 信息隐藏技术综述
- 隐藏字段技术
- 隐藏字段技术
- 木马隐藏技术
- 图像信息隐藏技术
- Dll 模块隐藏技术
- 23种设计模式详解
- PAT 1074. Reversing Linked List
- 牢记基础,随时回顾
- 最长回文序列(求出最长的并且打印出来)
- Letter Combinations of a Phone Number
- myAjax(隐藏帧技术)
- MapReduce 调优
- win7和win10系统的安装教程
- 程序思维
- POJ1996
- ionic实战之easyNote项目
- 面向对象
- UVA 10674 Tangents 求两圆切线
- Object类中定义实现的方法