jquery-ajax详解

Jquery-ajax 全景图



学习最好的办法就是看文档,深入学习最好的办法就是看源码。
声明:ajax与哪种web语言无关。以前总是用php使用ajax,今天用最近自己一直在使用的javaweb来实现一下。如果出现不能加载的情况试试重启tomcat(你所用的中间件)。
第一种方法:load
形式:load(url,[data],[callback])
概述:载入远程的HTML文件代码并且插入到DOM中
参数
url->待载入的网址(php,java等等都可以)
data:发送到服务器的键值对 key/value
callback: 载入成功时的回掉函数
index.jsp中核心ajax代码
1
2
3
4
5
6
$(document).ready(function(){
    //加载servlet
    $("#state").load("JsonServlet",{test1:1,test2:2},function(){
        alert("sucess");
    });
});
JsonServlet.java中核心代码
1
2
3
4
5
6
7
8
9
10
11
12
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    StringBuffer json = new StringBuffer();
    String line = null;
    BufferedReader reader = request.getReader();
    while((line=reader.readLine())!=null ){
        json.append(line);
    }
    System.out.println(json.toString());
}<br>
注意:要想更好的处理json数据,你可以借助第三方的字符串到json的处理类 https://github.com/douglascrockford/JSON-java/blob/master/JSONObject.java
小结:
load其实很简单,一般的用途就是在页面加载的时候异步的获取另外的页面的部分或者全部内容。
第二种方法:get
形式:jQuery.get(url,[data],[callback],[type])
概述:通过远程http get请求载入信息。事实上这是一个简单的get请求取代复杂的.ajax
参数
url:待载入页面的url地址
data:带发送的key/value
callback:载入成功时的回掉函数
type:返回的内容格式xml, html, script, json, text, _default
index.jsp中核心的js代码
1
2
3
4
5
6
7
8
9
10
11
$(function() {
    $("#btn").click(function(){
        $.get("GetServlet","",function(data){
            alert("data");
        });
    });
});
<div>
    <input type="button" value="刷新" id="btn" />
</div>
  
GetServlet.java中核心的java代码
1
2
3
4
5
6
7
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doPost(request, response);
}
protectedvoidthrows  doPost(HttpServletRequest request, HttpServletResponse response)  ServletException, IOException {
    PrintWriter out = response.getWriter();
    out.write("hello ajax");
}
显示效果:
 
 
第三种方法:post
形式jQuery.post(url,[data],[callback],[type])
概述:通过远程http get请求载入信息。事实上这是一个简单的get请求取代复杂的.ajax
参数
url:待载入页面的url地址
data:带发送的key/value
callback:载入成功时的回掉函数
type:返回的内容格式xml, html, script, json, text, _default
实例和上面的get的方式差不多.但是正如我们表单传值一样,get和post是有不同的地方的。想深入学习,建议看看相关的文章。我的理解还是只在表单传值之上的理解。
 
第四种方法:getJSON
形式:jquery.getJSON(url, [data],[callback])
概述:通过http get 请求载入JSON数据
参数:
url:待载入页面的url地址
data:带发送的key/value
callback:载入成功时的回掉函数
其实和type为json的时候是。。。。
 
第五种方法:getScript
形式:jQuery.get(url,[callback])
概述通过 HTTP GET 请求载入并执行一个 JavaScript 文件
参数
url (String) : 待载入 JS 文件地址。
callback (Function) : (可选) 成功载入后回调函数。
也就是加载js并且执行js文件的一个ajax下的函数
 
终极方法:
jquery.ajax() 其实get() post()等都是jquery.ajax()的高层实现。有时间深入学习学习。目前只是在joomla的MVC组件开发中用到过。而且还是jqplot这个插件中使用的。
 
serialize() 与 serializeArray()

serialize() : 序列表表格内容为字符串。serializeArray() : 序列化表格元素 (类似 ‘.serialize()‘ 方法) 返回 JSON 数据结构数据。

 IT所有的领域都是一个无底洞。这几天接触安全,安全是无底洞,java也是。php也没那么简单。前端同样。哈哈,选中自己喜欢的各种专研吧。

jquery-ajax详解,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。