JQuery的Ajax請求實現(xiàn)局部刷新的簡單實例
請求的ajax路徑傳遞的參數(shù)(data)會到action中被一個同樣名字的變量(附帶set get方法)接收,返回的data是一個JQuery的數(shù)組對象,在被調(diào)用的action中涉及到的數(shù)據(jù)變量會對象,都會封裝到data中最終返回給頁面。
案例:如圖

我要實現(xiàn)狀態(tài)的更改,用JQuery的Ajax更改完之后圖標(biāo)發(fā)生改變,實現(xiàn)頁面的局部刷新
原理:局部刷新是刷新頁面的一部分,在此案例中實現(xiàn)的只是圖標(biāo)的改變,把后臺代碼和前臺現(xiàn)實的圖標(biāo)分離,并不是對數(shù)據(jù)庫重新做查詢,二是后臺數(shù)顯數(shù)據(jù)修改之后,前臺直接改變圖標(biāo)。
1.頁面 給每條記錄的圖標(biāo)一個唯一的id值:
<td align="center">
<s:if test="messageState == 0">
<img src="${ctx}/images/04.png" id="r${message.messageID}"/>
</s:if>
<s:else>
<img src="${ctx}/images/03.png" id="r${message.messageID}"/>
</s:else>
</td>
Ajax驗證:給A標(biāo)簽添加的id= aUnread,再添加事件
jQuery("#aUnread").click(function(){
var strIds="";//定義一個傳遞數(shù)據(jù)的變量
$("input[name='checkbox']").each(function (){
if(this.checked){
strIds +=this.value+",";//得到的是多個id值,拼成字符串傳到action
}
});
$.ajax({
type: "post",
dataType:'json', //接受數(shù)據(jù)格式
cache:false,
data:"strIds="+strIds,
url: "${ctx}/feedbackonline/updateMessageStateUnread.action",
beforeSend: function(XMLHttpRequest){
},
success: function(data){
var str=data.str;//接收返回的數(shù)據(jù)
for(var p in str){ //遍歷接受的數(shù)組對象
var x="#r"+str[p];//獲取要改變的記錄的圖標(biāo)id
$(x).attr("src","${ctx}/images/04.png");
//把對應(yīng)的id值的圖標(biāo)src屬性值變成相應(yīng)圖標(biāo)的路徑
}
},
error: function(){
//請求出錯處理
alert("Error!");
}
});
});
2.后臺action:
private String strIds;//省略set get 方法,自動獲取到頁面?zhèn)鞯捻憫?yīng)的數(shù)據(jù)
private String[] str;//省略set get 方法
@Action("/updateMessageStateUnread")
public String updateMessageState() throws Exception{
String[] jStr = strIds.split(",");//把字符串拆分成字符串?dāng)?shù)組
str=jStr;//把拆分的字符串?dāng)?shù)組賦給有g(shù)et set方法的數(shù)組變量str返回到頁面上
for(int i=0;i<jStr.length;i++){
int id=Integer.parseInt(jStr[i]);
messageUserinfo=messageUserinfoManager.queryById(id);
messageUserinfo.setMessageState(0);
messageUserinfoManager.update(messageUserinfo);
}
return "ajax";
}
- jquery的ajax異步請求接收返回json數(shù)據(jù)實例
- 跨域請求之jQuery的ajax jsonp的使用解惑
- jquery ajax請求方式與提示用戶正在處理請稍等
- 為jquery的ajax請求添加超時timeout時間的操作方法
- jQuery.ajax 跨域請求webapi設(shè)置headers的解決方案
- Jquery ajax請求導(dǎo)出Excel表格的實現(xiàn)代碼
- Jquery Ajax請求文件下載操作失敗的原因分析及解決辦法
- 淺析jQuery Ajax請求參數(shù)和返回數(shù)據(jù)的處理
- 教你如何終止JQUERY的$.AJAX請求
- jQuery中ajax的相關(guān)知識點匯總
相關(guān)文章
jQuery實現(xiàn)新消息在網(wǎng)頁標(biāo)題閃爍提示
這篇文章主要介紹了jQuery實現(xiàn)新消息在網(wǎng)頁標(biāo)題閃爍提示的相關(guān)資料,需要的朋友可以參考下2015-06-06
jquery 正整數(shù)數(shù)字校驗正則表達(dá)式
本文主要介紹了jquery正整數(shù)數(shù)字校驗正則表達(dá)式的方法。具有一定的參考價值,下面跟著小編一起來看下吧2017-01-01
在一個頁面實現(xiàn)兩個zTree聯(lián)動的方法
最近發(fā)現(xiàn)項目中很多地方都是樹形菜單,而這些樹形菜單都是使用樹形插件zTree來制作的,下面這篇文章主要給大家介紹了關(guān)于在一個頁面實現(xiàn)兩個zTree聯(lián)動的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12
jquery實現(xiàn)紅色豎向多級向右展開的導(dǎo)航菜單效果
這篇文章主要介紹了jquery實現(xiàn)紅色豎向多級向右展開的導(dǎo)航菜單效果,涉及jquery鼠標(biāo)hover事件結(jié)合class樣式動態(tài)添加與刪除的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-08-08
jQuery學(xué)習(xí)筆記之創(chuàng)建DOM元素
這篇文章主要介紹了jQuery學(xué)習(xí)筆記之創(chuàng)建DOM元素的相關(guān)資料,需要的朋友可以參考下2015-01-01
使用jquery.form.js實現(xiàn)圖片上傳的方法
這篇文章主要介紹了使用jquery.form.js實現(xiàn)圖片上傳的方法,涉及jquery使用表單插件jquery.form.js進(jìn)行圖片上傳的提交、類型驗證、執(zhí)行結(jié)果回調(diào)顯示等技巧,非常簡單實用,需要的朋友可以參考下2016-05-05

