首頁 > web前端 > js教程 > 主體

jquery ajax範例傳回值詳解

巴扎黑
發布: 2017-06-30 14:21:13
原創
1152 人瀏覽過

$.ajax()跟($.post(),$.get())最主要的差異就是成功回調後,執行success. . $.post(),$.get()就只能簡單的做下傳遞,返回. .後續工作沒辦法繼續.所以看情況調用

JQuery中,AJAX有三種實現方式:$.ajax() , $.post , $.get()。
首先我們看$.get():

程式碼如下:

$.get("test.jsp", 
{ name: "cssrain", time: "2008/01/21" }, //要传递的数据 
function(data){ 
alert("返回的数据: " + data); 
} 
)
登入後複製

然後看$.post():
跟$.get()格式一樣.

程式碼如下:

$.post("test.jsp", 
{ name: "cssrain", time: "2008/01/21" }, //要传递的数据 
function(data){ 
alert("返回的数据: " + data); 
} 
)
登入後複製

上面2種方式的差異應該就是請求方式不同(一個get 一個post).
最後我們看$.ajax():

程式碼如下:

$.ajax({ 
url:'Accept.jsp', 
type:'post', //数据发送方式 
dataType:'html', //接受数据格式 (这里有很多,常用的有html,xml,js,json) 
data:'text='+$("#name").val()+'&date='+new Date(), //要传递的数据 
error: function(){ //失败 
alert('Error loading 
document
'); 
}, 
success: function(msg){ //成功 
alert( "Data Saved: " + msg ); 
} 
});
登入後複製

實例
前台jsp部分的程式碼如下:...
票數:

程式碼如下:

<span id="i<%=id%>"><%=vote_number%></span><br/> 
<a 
onclick
=myvote(<%=id%>); href=&#39;
javascript
:;&#39;">投票</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); 
} 
}); 
}
登入後複製

傳回資料為json
後台傳回的json資料如下
{issucc:,mess:」「,votenum:,myid:}
issucc:是否成功
mess:訊息,主要是錯誤訊息,例如沒登錄,超過限制等
votenum:投票後的得票總數
myid:投票的id,用於更新頁面的投票數
一個註冊登入實例
js
login.jsp傳回的類型為text形式,正確時是“OK”,錯誤時是
“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");} 
%>
登入後複製

以上是jquery ajax範例傳回值詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板