JQuery 常用积累(一)前后台数据交互和处理

1. 遍历表格中的所勾选的行,组织数据结构,传递到后台处理:

        var datas = new Object();
        var fields = ["致命",连击","连击次","命中","混乱","封印","遗忘","鬼火"];
        $("#table").find("tr").each(function(i) {
//这一句保证遍历的行是勾选了的
            if($(this).children("#cbox").children("input#operation").prop("checked")){
                $(this).find("td").each(function(j) {
                    if(j>0){
                        var field = fields[j];
                        datas[field] = $(this).text();
                    }
                });
            }
        });

a.项目中遇到这种场景比较多,需要将表格信息组织后传递给后台处理;
b.JQuery 中,遍历 table 中的 行 和 列,类似于循环嵌套;
c.循环每行,保存这一行中的每一列的数据,组成 jsonobject 对象,{"致命":"1",连击":"2","连击次":"3","命中":"4","混乱":"5","封印":"6","遗忘":"7","鬼火":"8"}
e.将每行的 jsonobject 对象保存到 jsonarray 对象中,类似与
[{"致命":"1",连击":"2","连击次":"3","命中":"4","混乱":"5","封印":"6","遗忘":"7","鬼火":"8"},{"致命":"1",连击":"2","连击次":"3","命中":"4","混乱":"5","封印":"6","遗忘":"7","鬼火":"8"}]
g.因为Js是弱引用语言,没有java 那样强硬的数据类型,上面 jsonobjec 和 jsonarray 对象是相对与传递到后台之后,解析所用到的对象,在js 中用 object()对象进行存储;
h.上面定义的 var fields = ["致命",连击","连击次","命中","混乱","封印","遗忘","鬼火"] 类似与 map 中的 key,而遍历每行中的每一个元素的时候,将对应的 {key:value,}存放到 object 中;i.js 中的 map 可以用 object()对象, list<map> 可以用 object(() 对象,突然感觉 js 中 object()对象很牛逼,但是这样比较危险,不安全;

回到顶部

2. 后台得到数据库查询数据,前台进行遍历展示:


a.首先查询数据表得到的数据,需要一个 list 来存储,list 里面的元素是map<string,object>;
b.关于数据库增、删、改、查,根据 javabean 注解增、删、改、查的封装,后面有机会的话在总结;
c.

      List<Map<String,Object>> result = selecter.list(select * from school);
d.可以将查询到结果 List<Map<String,Object>>,对应一个标示符 key, 放入map 中,返回到前台展示,顺便加入查询状态;

returnmap.put("school", result);
returnmap.put("success", true);
e.因为项目采用的是spring MVC ,整个页面和后台的交互都是通过 ajax 异步进行;

$.ajax({
            url         :    '/service/xxx_object_mapping/xxxx_method_mapping',
            type        :    'GET',
            dataType    :    'json',
            success     :    function(data){
                if(data.success){
                    //console.log(JSON2.stringify(data.school));
                    schoolxx = data.school;

//动态生成表格的行,先组织好要设定的属性,比如这里,给每行的学校名称,显示一张照片,给一个点击响应的事件,只要你能在前端组织好的属性,都可以放到这里动态生成
                row += '<div class="row-fluid"><ul class="thumbnails">';
                    $.each(schoolxx, function(index, school){
                     row += '<li class="span2 font thumbnail" >';
                     row += '<a href="#"  onclick="open(\''+ school.smx + '\',\'' + school.smy+ '\');">';
                     row += '<img data-holder-rendered="true" src="/style/images/bb1.png" + '"';
                     row += 'style="height:120x; width:130px;" alt="' + school.name+ '">';
                     row += '<br>' + school.name + '</a></li>';
                    });
                 row += "</ul></div>";
                    $(".container-fluid").append($(row));
                }else{
                    showAlert($(".container-fluid"), "错误提示!", data.error, "error", true);
                }
            },
            error        :    function(data){
                showAlert($(".container-fluid"), "错误!", "连接服务器失败!", "error", true);
            }
        });

f.通过ajax 访问后台,返回的是 map ,前台 ajax 自动会解析为 jsonarray,  
success     :    function(data)
这一部分是成功后的回调函数,data 是后台返回过来的 map;

g.JQuery $.each 的遍历函数,很好的解决了前台遍数据库返回的 List<Map<String,Object>> 数据类型;
h.list 中含有几个元素,前台动态产生几行,或者是几列,或者是几个便签页.........添加其中的属性,响应事件都可以实现;
i.动态生成的时候需要注意转义字符;

作者:Orson 
出处:http://www.cnblogs.com/java-class/ 
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】 
如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】 
如果,您对我的博客内容感兴趣,请继续关注我的后续博客,我是【Orson】 

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段 声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 

转载:http://www.cnblogs.com/java-class/p/4505921.html

时间: 2024-11-29 19:20:33

JQuery 常用积累(一)前后台数据交互和处理的相关文章

JQuery 常用积累(四)Bootstrap Multiselect

阅读目录 1.JavaBean 方式,在JSP 页面,嵌入java 代码实现 2.后台数据库交互,前台 JavaScript 动态添加选项      实际的项目网站中或多或少的或用到多选框,我选用的一款是Bootstrap Multiselect. 官方文档: http://www.kuitao8.com/demo/20140224/1/bootstrap-multiselect-master/index.html 如果你英文好一点,里面有详细的介绍,多选框的设置,多选框获取值/文本,选项分组,

JQuery 常用积累(六)ZTree

阅读目录 1. Ztree 主要的特点 2. Web 前端 3. Web 后端     Web 项目或多或少都会有涉及到什么人员职称树,菜单树,组织机构树......     历手三四个项目有大有小,采用的树前端都是 Ztree.     有些优秀的J2EE 框架将这些常用的组件都封装起来,作为模块化的组件提供给前端,这样固然是好,开发效率会提升几倍.     客户需求是什么,组件化往上一套,几分钟就能搭建起来.     但这样咱程序员真的就是搬砖的了,纯纯的重复性工作. 回到顶部 1. Ztr

JQuery 常用积累(二)Pagination 分页组件

阅读目录 1.JSP页面 2.JS 控制 3.后台java类进行处理的两个公共方法 官方Demo网址:http://mricle.com/JqueryPagination      分页组件几乎是一般网站都会涉及到的组件,网上有很多这样的插件,自己挑来跳去选择了这一款,功能强大,可扩展性比较强,而且幕后的工程师一直在完善这个插件,不废话了,上干货. (模拟场景:商店网站,俺要根据用户选择的查询条件,来查询数据库,并展示到前台) 回到顶部 1.JSP页面 如果你的web项目前台是基于bootstr

总结jquery中的六种Ajax数据交互应用

jquery中的几种ajax请求,包括最底层的方法$.ajax(),第二层的load().$.post().$.ajax(),第三层的$.getJSON().$.getScript().  代码如下 复制代码 <script type="text/javascript"> //jquery中的几种ajax请求 function ajaxRequest(){     /*        $.ajax();最底层的方法        load().$.post().$.ajax

JQuery 常用积累(三)Select 下拉框

阅读目录 1.jQuery获取Select选择的Text和Value 2.jQuery设置Select选择的Text和Value 3.jQuery添加/删除Select的Option项 4.遍历option和添加.移除option <select id="hello"></select> 回到顶部 1.jQuery获取Select选择的Text和Value 语法解释: $("#select_id").change(function(){//c

Silverlight融合ajax实现前后台数据交互_实用技巧

事出偶然,本来公司强调的是用WCF 做项目审批流程,WPF /E 增强用户体验:由于个人的无知与偷懒,我产生了天真的想法:用WPF/E 来做审批流程,这不是一举两得吗. 下面介绍的就是用Silverlight (微软在07 年9 月将WPF/E 更名为Silverlight )融合ajax 做的审批流程.界面上的审批流程从下向上包括3部分,部门审批,科技处审批,厂长审批.实现的功能是可以定制审批流程,比如审批流程是部门审批--> 厂长审批,也可以定制成科技处审批--> 厂长审批.定制的数据存在

JQuery 常用积累(五)Datetimepicker和Lodop

阅读目录 1.Datetimepicker 2.Lodop web项目中日期选择器和打印这两个功能是非常常见,将项目中使用的日期选择器和打印控件,在这里总结归纳,为方便后面使用. 回到顶部 1.Datetimepicker a.官方API:http://www.bootcss.com/p/bootstrap-datetimepicker/ 里面有详细的Datetimepicker介绍,包括支持的方法.设置的选项.事件..... b.项目集成Datetimepicker实例:    这是一款依赖与

基于MVC4+EasyUI的Web开发框架经验总结(12)--利用Jquery处理数据交互的几种方式

在基于MVC4+EasyUI的Web开发框架里面,大量采用了Jquery的方法,对数据进行请求或者提交,方便页面和服务器后端进行数据的交互处理.本文主要介绍利用Jquery处理数据交互的几种方式,包括获取数据并显示,插入新数据到服务器,更新数据,删除数据等操作. 1.利用Jquery获取数据并显示 为了顺利获取数据,我们需要保持页面端调用和服务器端保持一致,并相应的把数据转换或者封装为对象实体进行处理. 下面我们以一个简单的全国省份.全国城市.全国城市行政区的案例进行Demo代码的介绍.    

jQuery通过Ajax返回JSON数据

  jQuery通过Ajax返回JSON数据          最近在使用JQuery的ajax方法时,要求返回的数据为json数据,在处理的过程中遇到下面的几个问题,那就是采用不同的方式来生成json数据的时候,在$.ajax方法中应该是如何来处理的,下面依次来进行说明. 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuery通过Ajax向PHP服务端发送请求并返回JSON数据. JSON(JavaScript