zoukankan      html  css  js  c++  java
  • Ajax实例

    最近想学着J2EE来着,就学到了Ajax这个东西,就跟着学了点,下面就给个实例,省的自己以后用到了也不知道哪找去。

    html页面:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>user_info.html</title>
    	
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="this is my page">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        
        <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
    
    <script type="text/javascript">
      
      String.prototype.trim = function() {
      	return this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
     }
      	var xmlHttp;
      	
      	function createXMLHttpRequest(){
      		if(window.XMLHttpRequest){
      			xmlHttp=new XMLHttpRequest();
      		}else{
      			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      		}
      	}
      
    	function validate(user){
    	
    		if(user.value.trim().length!=0){
    
    			createXMLHttpRequest();
    			var url="user_validate.jsp?userNumber="+user.value.trim()+"&time="+new Date().getTime();
    			xmlHttp.open("get",url,true);
    			
    			// 把方法地址赋值给xmlHttp的onreadystatechange属性
    			xmlHttp.onreadystatechange=callback;
    			
    			xmlHttp.send(null);
    		}
    	}
    	
    	function callback(){
    	//	alert(xmlHttp.readyState);
    		if(xmlHttp.readyState==4){ // Ajax引擎初始化完成
    			if(xmlHttp.status ==200){ // http 200响应
    			//	alert("请求成功");
    		//	alert(xmlHttp.responseText);
    				document.getElementById("spanuserNumber").innerHTML="<font color='red'>"
    				+xmlHttp.responseText+"</font>"
    			}else{
    				alert("请求错误"+xmlHttp.status);
    			}
    		}
    	}
    	
    </script>
      
    
    
      </head>
      
      <body>
      
      
        This is my HTML page. <br>
        
        <form name="input" action="html_form_action.asp" method="get">
        <table border =0 >
        <tr>
    	<td>Usernumber: </td>
    	<td><input type="text" name="usernumber" id="usernumber" onblur="validate(this)"/>
    	<span id="spanuserNumber"></span>
    	</td>
    	</tr>
    	<tr>
    	<td>Username:</td>
    	<td> <input type="text" name="username" />
    	</td>
    	</tr>
    	<tr>
    	<td>
    	null:
    	</td>
    	<td> <input type="text" name="user" />
    	</td>
    	</tr>
    	<tr>
    	<td>
    	<input type="submit" value="Submit" />
    	</td>
    	</tr>
    </table>
    </form>
      </body>
    </html>
    

    这里用到了trim(),按照教程的是用trim(str),而不是 str.trim()调用,上网查了下才发现IE不支持,而且实现这个的方法居然又十几种之多,http://www.cnblogs.com/rubylouvre/archive/2009/09/18/1568794.html

    提交到Ajax的jsp页面如下:

    <%@ page language="java"  pageEncoding="UTF-8"%>
    <%@ page import ="com.fillblank.jdbc.*"%>
    
        <%
        	String userNumber=request.getParameter("userNumber");
        	if(JDBCConnection.findByUserNumber(userNumber)){
        		System.out.print("JDBCConnection.findByUserNumber()--userer="+userNumber);
        		//out.println("the number is already in use");
        		out.println("号码已存在");
        	}
        
         %>
     


    然后出现的效果如下:



    对于ajax总体感觉用起来不错,不过个人感觉好像也只是提供了一个用户友好的页面而已,其他好像就没啥用了?

  • 相关阅读:
    《机器学习实战》K近邻算法
    第 4 章 单例模式
    第 3 章 闭包和高阶函数
    第2章 this 、 call 和 apply
    第1章 面向对象的JavaScript
    前言 发展历史
    Linux常用的基本命令
    VLSM
    IP编址和子网划分
    RADIUS操作命令
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3104882.html
Copyright © 2011-2022 走看看