jquery ajax例子返回值詳解
更新時(shí)間:2012年09月11日 17:45:01 作者:
$.ajax()跟($.post(),$.get())最主要的差別就是 成功回調(diào)后,執(zhí)行success. . $.post(),$.get()就只能簡單的做下傳遞 ,返回. .后續(xù)工作沒法繼續(xù).所以看情況調(diào)用
在JQuery中,AJAX有三種實(shí)現(xiàn)方式:$.ajax() , $.post , $.get()。
首先我們看$.get():
$.get("test.jsp",
{ name: "cssrain", time: "2008/01/21" }, //要傳遞的數(shù)據(jù)
function(data){
alert("返回的數(shù)據(jù): " + data);
}
)
然后看$.post():
跟$.get()格式一樣.
$.post("test.jsp",
{ name: "cssrain", time: "2008/01/21" }, //要傳遞的數(shù)據(jù)
function(data){
alert("返回的數(shù)據(jù): " + data);
}
)
上面2種方式的區(qū)別應(yīng)該就是 請求方式不同(一個(gè)get 一個(gè)post).
最后我們看$.ajax():
$.ajax({
url:'Accept.jsp',
type:'post', //數(shù)據(jù)發(fā)送方式
dataType:'html', //接受數(shù)據(jù)格式 (這里有很多,常用的有html,xml,js,json)
data:'text='+$("#name").val()+'&date='+new Date(), //要傳遞的數(shù)據(jù)
error: function(){ //失敗
alert('Error loading document');
},
success: function(msg){ //成功
alert( "Data Saved: " + msg );
}
});
實(shí)例
前臺jsp部分的代碼如下:...
票數(shù):
<span id="i<%=id%>"><%=vote_number%></span><br/>
<a onclick=myvote(<%=id%>); href='javascript:;'">投票</a>
...
js部分的代碼如下
function myvote(id){
$.post("vote.jsp", { id: id },
function(data){
eval("var data="+data);
if (data.issucc=="0"){
alert(data.mess)
}else{
//alert("更新頁面");
$("#i"+data.myid).html(data.votenum);
}
});
}
返回?cái)?shù)據(jù)為json
后臺返回的json數(shù)據(jù)如下
{issucc:,mess:”“,votenum:,myid:}
issucc:是否成功
mess:信息,主要是錯(cuò)誤信息,比如沒登錄,超過限制等
votenum:投票后的得票總數(shù)
myid:投票的id,用于更新頁面的投票數(shù)
一個(gè)注冊登錄實(shí)例
js
login.jsp返回的類型為text形式,正確時(shí)是“OK”,錯(cuò)誤時(shí)是
“error”。
var userName;
var password;
var result;
$(document).ready(function(){
$("#load").hide();
$("#success").hide();
$("#error").hide();
});
$(document).ready(function(){
$("#button").click(function(){
$("#error").hide();
$("#load").show("slow");
userName = $("#userName").val();
password = $("#password").val();
$.ajax({type: "post",
url: "login.jsp",
dataType: "html",
data: "userName="+userName+"&password="+password,
success: function(result){
var res = String($.trim(result));
if(res=="OK"){
$("#myTable").hide("slow");
$("#success").show("slow");
}else if(res=="error"){
$("#error").show("slow");
$("#load").hide("slow");
}else{
alert("返回異常");}
}
});
});
});
jsp頁面
第一種responseText格式
<%@ page language="java" pageEncoding="gb2312"%>
<%
String userName = request.getParameter("userName");
String password = request.getParameter("password");
if(password.equals("longleg")&&userName.equals("thy")){
out.print("OK");
}else{out.print("error");}
%>
首先我們看$.get():
復(fù)制代碼 代碼如下:
$.get("test.jsp",
{ name: "cssrain", time: "2008/01/21" }, //要傳遞的數(shù)據(jù)
function(data){
alert("返回的數(shù)據(jù): " + data);
}
)
然后看$.post():
跟$.get()格式一樣.
復(fù)制代碼 代碼如下:
$.post("test.jsp",
{ name: "cssrain", time: "2008/01/21" }, //要傳遞的數(shù)據(jù)
function(data){
alert("返回的數(shù)據(jù): " + data);
}
)
上面2種方式的區(qū)別應(yīng)該就是 請求方式不同(一個(gè)get 一個(gè)post).
最后我們看$.ajax():
復(fù)制代碼 代碼如下:
$.ajax({
url:'Accept.jsp',
type:'post', //數(shù)據(jù)發(fā)送方式
dataType:'html', //接受數(shù)據(jù)格式 (這里有很多,常用的有html,xml,js,json)
data:'text='+$("#name").val()+'&date='+new Date(), //要傳遞的數(shù)據(jù)
error: function(){ //失敗
alert('Error loading document');
},
success: function(msg){ //成功
alert( "Data Saved: " + msg );
}
});
實(shí)例
前臺jsp部分的代碼如下:...
票數(shù):
復(fù)制代碼 代碼如下:
<span id="i<%=id%>"><%=vote_number%></span><br/>
<a onclick=myvote(<%=id%>); href='javascript:;'">投票</a>
...
js部分的代碼如下
復(fù)制代碼 代碼如下:
function myvote(id){
$.post("vote.jsp", { id: id },
function(data){
eval("var data="+data);
if (data.issucc=="0"){
alert(data.mess)
}else{
//alert("更新頁面");
$("#i"+data.myid).html(data.votenum);
}
});
}
返回?cái)?shù)據(jù)為json
后臺返回的json數(shù)據(jù)如下
{issucc:,mess:”“,votenum:,myid:}
issucc:是否成功
mess:信息,主要是錯(cuò)誤信息,比如沒登錄,超過限制等
votenum:投票后的得票總數(shù)
myid:投票的id,用于更新頁面的投票數(shù)
一個(gè)注冊登錄實(shí)例
js
login.jsp返回的類型為text形式,正確時(shí)是“OK”,錯(cuò)誤時(shí)是
“error”。
復(fù)制代碼 代碼如下:
var userName;
var password;
var result;
$(document).ready(function(){
$("#load").hide();
$("#success").hide();
$("#error").hide();
});
$(document).ready(function(){
$("#button").click(function(){
$("#error").hide();
$("#load").show("slow");
userName = $("#userName").val();
password = $("#password").val();
$.ajax({type: "post",
url: "login.jsp",
dataType: "html",
data: "userName="+userName+"&password="+password,
success: function(result){
var res = String($.trim(result));
if(res=="OK"){
$("#myTable").hide("slow");
$("#success").show("slow");
}else if(res=="error"){
$("#error").show("slow");
$("#load").hide("slow");
}else{
alert("返回異常");}
}
});
});
});
jsp頁面
第一種responseText格式
復(fù)制代碼 代碼如下:
<%@ page language="java" pageEncoding="gb2312"%>
<%
String userName = request.getParameter("userName");
String password = request.getParameter("password");
if(password.equals("longleg")&&userName.equals("thy")){
out.print("OK");
}else{out.print("error");}
%>
您可能感興趣的文章:
- jquery實(shí)現(xiàn)ajax提交form表單的方法總結(jié)
- jquery中ajax使用error調(diào)試錯(cuò)誤的方法
- jquery中ajax處理跨域的三大方式
- jquery ajax提交表單數(shù)據(jù)的兩種方式
- JQuery的Ajax請求實(shí)現(xiàn)局部刷新的簡單實(shí)例
- JQuery AJAX提交中文亂碼的解決方案
- jquery ajax 向后臺傳遞數(shù)組參數(shù)示例
- JQuery處理json與ajax返回JSON實(shí)例代碼
- Jquery中ajax方法data參數(shù)的用法小結(jié)
- jQuery AJAX應(yīng)用實(shí)例總結(jié)
相關(guān)文章
jQuery的選擇器中的通配符[id^=''code'']或[name^=''code'']及jquery選擇器總結(jié)
這篇文章主要介紹了jQuery的選擇器中的通配符[id^='code']或[name^='code']及jquery選擇器總結(jié)的相關(guān)資料,需要的朋友可以參考下2015-12-12
jquery檢測input checked 控件是否被選中的方法
這篇文章主要介紹了jquery檢測input checked 控件是否被選中的方法,需要的朋友可以參考下2014-03-03
jQuery實(shí)現(xiàn)滑動tab選項(xiàng)卡
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)滑動tab選項(xiàng)卡,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
jquery實(shí)現(xiàn)頁面百葉窗走馬燈式翻滾顯示效果的方法
這篇文章主要介紹了jquery實(shí)現(xiàn)頁面百葉窗走馬燈式翻滾顯示效果的方法,實(shí)例分析了jQuery操作百葉窗翻滾效果的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
jQuery EasyUI tree增加搜索功能的實(shí)現(xiàn)方法
擴(kuò)展jQuery EasyUI tree搜索樹節(jié)點(diǎn)的方法,使其支持節(jié)點(diǎn)名稱的模糊匹配,將不匹配的節(jié)點(diǎn)隱藏。下面通過本文給大家分享jQuery EasyUI tree增加搜索功能,需要的朋友可以參考下2017-04-04
jQuery通過寫入cookie實(shí)現(xiàn)更換網(wǎng)頁背景的方法
這篇文章主要介紹了jQuery通過寫入cookie實(shí)現(xiàn)更換網(wǎng)頁背景的方法,涉及jQuery結(jié)合cookie設(shè)置頁面元素屬性的相關(guān)操作技巧,需要的朋友可以參考下2016-04-04

