日期:2014-05-16  浏览次数:20844 次

ajax学习笔记(一)

AJAX简介

???? 读音:[e:j^ks] AJAX“Asynchronous JavaScript and XML”(异步JavaScriptXML)AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词,是指一种创建交

互式网页应用的网页开发技术。

作用功能

?????? 增加用户的体验性,减少页面跳转。

涉及技术

??????? javascript?? css?? html java

开发工具及框架

??????? IntelliJ??? Mozilla浏览器(firebug

?????? JavaScript框架:JQUERYJavaScript基本包装)、prototypedojosunibm支持)、ext(效果强大)、mootoolsricoDWRJavaScript-java)等等

"HELLO WORLD" program

?????? 使用AJAX与之前最大区别,无需表单直接提交至后台,所以不需要在前台使用FORM 标签,在input标签中写明id值,以供JavaScript取到以及回写值。并在表单标签中

加入JavaScript事件处理,激活并调用JavaScript函数。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <title></title>
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript" src="js/check.js"></script>
</head>
<body>
        <CENTER>
            <H1>AJAX练习</H1>
                <input type="text" id="userName">
                <input type="submit" value="提交" onclick="check()">
                <div id="result"></div>
        </CENTER>
</body>

?

?Jquery框架中使用${"#id"}可以获取到HTML中表单属性的相关信息,其返回的是jquery的一个对象,调用该对象的val()函数可以返回其具体值。调用该对象的html

String)方法可以向html中回写值,设置每一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档。

????? jQuery.post(url, [data], [callback], [type]) 函数,通过远程 HTTP POST 请求载入信息。这是一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用

回调函数。如果需要在出错时执行函数,请使用 $.ajax

url?? 发送请求地址

data(可选) 键值对 MAP

callback(可选) 回调函数

type(可选) 返回内容格式,xml, html, script, json, text, _default

function check(){
   var jqueryName=$("#userName");
   var userName=jqueryName.val() ;
   $.post("test?name="+userName,null,back);
}
function back(result){
    var result=$("#result");
    result.html(result);
}

?

服务器端

???? 与之前调用并无差异,只是不需跳转,直接输出所需返回的值。

protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws
javax.servlet.ServletException, java.io.IOException {
        request.setCharacterEncoding("gb2312");
        String name=request.getParameter("name");
        PrintWriter out=response.getWriter();
        response.setContentType("text/html;charset=GB2312");
        if(name==null||"".equals(name)){
            out.println("name not null~!");
        }
        if("rewohs".equals(name)){
            out.println("this name is aready exist