JQuery的Ajax请求实现局部刷新的简单实例


Posted in Javascript onFebruary 11, 2014

请求的ajax路径传递的参数(data)会到action中被一个同样名字的变量(附带set get方法)接收,返回的data是一个JQuery的数组对象,在被调用的action中涉及到的数据变量会对象,都会封装到data中最终返回给页面。

案例:如图
JQuery的Ajax请求实现局部刷新的简单实例
JQuery的Ajax请求实现局部刷新的简单实例

我要实现状态的更改,用JQuery的Ajax更改完之后图标发生改变,实现页面的局部刷新

原理:局部刷新是刷新页面的一部分,在此案例中实现的只是图标的改变,把后台代码和前台现实的图标分离,并不是对数据库重新做查询,二是后台数显数据修改之后,前台直接改变图标。

1.页面 给每条记录的图标一个唯一的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标签添加的id= aUnread,再添加事件
jQuery("#aUnread").click(function(){
       var strIds="";//定义一个传递数据的变量
       $("input[name='checkbox']").each(function (){
        if(this.checked){
            strIds +=this.value+",";//得到的是多个id值,拼成字符串传到action
       }
    });
     $.ajax({
              type: "post",
              dataType:'json', //接受数据格式 
              cache:false,
              data:"strIds="+strIds,
              url: "${ctx}/feedbackonline/updateMessageStateUnread.action",
              beforeSend: function(XMLHttpRequest){
              },
              success: function(data){
                  var str=data.str;//接收返回的数据
                  for(var p in str){ //遍历接受的数组对象
                    var x="#r"+str[p];//获取要改变的记录的图标id
                    $(x).attr("src","${ctx}/images/04.png");
//把对应的id值的图标src属性值变成相应图标的路径
                  }
               },
              error: function(){
              //请求出错处理
                  alert("Error!");
              }
       });
    });

2.后台action:
private String strIds;//省略set get 方法,自动获取到页面传的响应的数据
private String[] str;//省略set get 方法
@Action("/updateMessageStateUnread")
    public String updateMessageState() throws Exception{
       String[] jStr = strIds.split(",");//把字符串拆分成字符串数组
       str=jStr;//把拆分的字符串数组赋给有get set方法的数组变量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";
    }
Javascript 相关文章推荐
文字幻灯片
Jun 26 Javascript
JavaScript地图拖动功能SpryMap的简单实现
Jul 17 Javascript
js读写cookie实现一个底部广告浮层效果的两种方法
Dec 29 Javascript
Jquery下EasyUI组件中的DataGrid结果集清空方法
Jan 06 Javascript
Javascript单元测试框架QUnitjs详细介绍
May 08 Javascript
Javascript中作用域的详细介绍
Oct 06 Javascript
详解vue事件对象、冒泡、阻止默认行为
Mar 20 Javascript
JS正则表达式验证中文字符
May 08 Javascript
js+html5实现页面可刷新的倒计时效果
Jul 15 Javascript
js+html实现点名系统功能
Nov 05 Javascript
npm qs模块使用详解
Feb 07 Javascript
JavaScript实现Tab选项卡切换
Feb 13 Javascript
javascript页面加载完执行事件代码
Feb 11 #Javascript
JS图像无缝滚动脚本非常好用
Feb 10 #Javascript
ExtJS判断IE浏览器类型的方法
Feb 10 #Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 #Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
Feb 10 #Javascript
js判断undefined类型示例代码
Feb 10 #Javascript
jQuery-ui引入后Vs2008的无智能提示问题解决方法
Feb 10 #Javascript
You might like
第六节 访问属性和方法 [6]
2006/10/09 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
PHP实现自动对图片进行滚动显示的方法
2015/03/12 PHP
PHP命名空间namespace的定义方法详解
2017/03/29 PHP
laravel 解决crontab不执行的问题
2019/10/22 PHP
thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json完整实例
2020/03/02 PHP
跨浏览器开发经验总结(四) 怎么写入剪贴板
2010/05/13 Javascript
window.name代替cookie的实现代码
2010/11/28 Javascript
javascrpt绑定事件之匿名函数无法解除绑定问题
2012/12/06 Javascript
switch语句的妙用(必看篇)
2016/10/03 Javascript
AngularJS框架的ng-app指令与自动加载实现方法分析
2017/01/04 Javascript
Vuex之理解Mutations的用法实例
2017/04/19 Javascript
ionic实现下拉刷新载入数据功能
2017/05/11 Javascript
详解如何使用webpack+es6开发angular1.x
2017/08/16 Javascript
浅谈Node.js CVE-2017-14849 漏洞分析(详细步骤)
2017/11/10 Javascript
使用axios实现上传图片进度条功能
2017/12/21 Javascript
javascript显示动态时间的方法汇总
2018/07/06 Javascript
[05:03]2018DOTA2亚洲邀请赛主赛事首日回顾
2018/04/04 DOTA
Python黑帽编程 3.4 跨越VLAN详解
2016/09/28 Python
Python 包含汉字的文件读写之每行末尾加上特定字符
2016/12/12 Python
python 实现分页显示从es中获取的数据方法
2018/12/26 Python
Python中print和return的作用及区别解析
2019/05/05 Python
在python中实现同行输入/接收多个数据的示例
2019/07/20 Python
如何基于Python实现数字类型转换
2020/02/07 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
加拿大购物频道:The Shopping Channel
2016/07/21 全球购物
美国婴儿服装购物网站:Gerber Childrenswear
2020/05/06 全球购物
汽车技术服务英文求职信范文
2014/01/02 职场文书
团支部推优材料
2014/05/21 职场文书
高等教育学专业自荐书
2014/06/17 职场文书
医生爱岗敬业演讲稿
2014/08/26 职场文书
2014年社区重阳节活动策划方案
2014/09/16 职场文书
2014坚持党风廉政建设思想汇报
2014/09/18 职场文书
山东省召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
小学科学教学计划
2015/01/21 职场文书
公司行政主管岗位职责
2015/04/09 职场文书