jQUery_review之jQuery的終極ajax方法$.ajax(),jqueryajax方法
經過的項目大大小小也有非常多的了,印象中很多架構低層封裝的方法都是在ajax()方法的基礎上進行擴充的。ajax方法可以說是jQuery提供的各式各樣的ajax相關方法的鼻祖,所有其他的比如load,get,post,getScript,getJson方法都是擴充於jQuery.ajax方法。
下面是一個實際的DEMO,將上面的參數都用了一遍:
前端頁面的代碼:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript" src="jquery-1.8.3.js"></script><script type="text/javascript">$(function(){$("#getContent").click(function(){$.ajax({url:"test",type:"get",timeout:2000,data:{name:"czz",address:"address"},dataType:'html',beforeSend:function(){alert('beforeSend');},complete:function(){alert('complete');},success:function(data,status){alert(data);},error:function(){alert('error');},global:false});});}); </script> </head> <body> <div id="showText"><span>He who hesitates is lost.</span></div> <input type="button" id="getContent" value="getAjax"> </body></html>
後端的代碼:
@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {String name = req.getParameter("name");String address = req.getParameter("address");StringBuffer sb = new StringBuffer("");sb.append("{\"name\":\"") .append(name) .append("_czz\",\"address\":\"") .append(address) .append("_czz\"}");resp.getWriter().print(sb.toString());}
其實jQuery最好的資料就是官方的文檔,上面有所有詳細的內容,周末愉快!
jQuery:jQuery的ajax方法非同步呼叫的問題
$.get( _thisItem.attr('href') , function( data ){_this.find('.product_item').removeClass('hide').html( data );});我是這樣寫的,是可以執行載入後的html中的js代碼,是一個頁面中的計數器。
請求的url內容是不含html標籤的頭部,只含body部分。
有上線的案例,需要可以私信我。
jQuery裡面的ajax方法的參數
AJAX 請求完成時執行函數。
jQuery 代碼:
$("#msg").ajaxComplete(function(event,request, settings){
$(this).append("<li>請求完成.</li>");
});
AJAX 請求失敗時顯示資訊。
jQuery 代碼:
$("#msg").ajaxError(function(event,request, settings){
$(this).append("<li>出錯頁面:" + settings.url + "</li>");
});
AJAX 請求發送前顯示資訊。
jQuery 代碼:
$("#msg").ajaxSend(function(evt, request, settings){
$(this).append("<li>開始請求: " + settings.url + "</li>");
});
AJAX 請求開始時顯示資訊。
jQuery 代碼:
$("#loading").ajaxStart(function(){
$(this).show();
});
AJAX 請求結束後隱藏資訊。
jQuery 代碼:
$("#loading").ajaxStop(function(){
$(this).hide();
});
當 AJAX 請求成功後顯示訊息。
jQuery 代碼:
$("#msg").ajaxSuccess(function(evt, request, settings){
$(this).append("<li>請求成功!</li>");
});
傳回值:XMLHttpRequestjQuery.ajax([options])
timeoutNumber佈建要求逾時時間(毫秒)。此設定將覆蓋全域設定。
希望我的回答對你有協助 要是有什麼不懂的就繼續問我