亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JQuery的Ajax請求實(shí)現(xiàn)局部刷新的簡單實(shí)例

 更新時(shí)間:2014年02月11日 08:56:47   作者:  
本篇文章只要是對JQuery的Ajax請求實(shí)現(xiàn)局部刷新的簡單實(shí)例進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助

請求的ajax路徑傳遞的參數(shù)(data)會(huì)到action中被一個(gè)同樣名字的變量(附帶set get方法)接收,返回的data是一個(gè)JQuery的數(shù)組對象,在被調(diào)用的action中涉及到的數(shù)據(jù)變量會(huì)對象,都會(huì)封裝到data中最終返回給頁面。

案例:如圖



我要實(shí)現(xiàn)狀態(tài)的更改,用JQuery的Ajax更改完之后圖標(biāo)發(fā)生改變,實(shí)現(xiàn)頁面的局部刷新

原理:局部刷新是刷新頁面的一部分,在此案例中實(shí)現(xiàn)的只是圖標(biāo)的改變,把后臺(tái)代碼和前臺(tái)現(xiàn)實(shí)的圖標(biāo)分離,并不是對數(shù)據(jù)庫重新做查詢,二是后臺(tái)數(shù)顯數(shù)據(jù)修改之后,前臺(tái)直接改變圖標(biāo)。

1.頁面 給每條記錄的圖標(biāo)一個(gè)唯一的id值:

復(fù)制代碼 代碼如下:

<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驗(yàn)證:給A標(biāo)簽添加的id= aUnread,再添加事件
復(fù)制代碼 代碼如下:

jQuery("#aUnread").click(function(){
       var strIds="";//定義一個(gè)傳遞數(shù)據(jù)的變量
       $("input[name='checkbox']").each(function (){
        if(this.checked){
            strIds +=this.value+",";//得到的是多個(gè)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(){
              //請求出錯(cuò)處理
                  alert("Error!");
              }
       });
    });

2.后臺(tái)action:
復(fù)制代碼 代碼如下:

private String strIds;//省略set get 方法,自動(dòng)獲取到頁面?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";
    }

相關(guān)文章

最新評(píng)論