jquery序列化form表单使用ajax提交后处理返回的json数据


Posted in Javascript onMarch 03, 2014

1、返回json字符串:

/** 将一个字符串输出到浏览器 */

    protected void writeJson(String json) {

        PrintWriter pw = null;

        try {

            servletResponse.setContentType("text/plain;charset=UTF-8");

            pw = servletResponse.getWriter();

            pw.write(json);

            pw.flush();

            pw.close();

        } catch (IOException e) {

            e.printStackTrace();

        } finally {

            if (pw != null) {

                pw.close();

            }

        }

    }

2、通过eval将返回的json字符串转换成json对象:

$.ajax({

        data:{

            "shipmmsi":shipmmsi,

            "shipname":shipname

        },

        url : "shipbk/findShipMMSIAndName.do",

        async : true,

        type : "POST",

        success : function(data) {

            var ships = eval('(' + data + ')');

            $("#bindShipmmsiDiv table tbody").html("");

            if(ships!=null){

                if(ships.length){

                    $("#bindShipmmsiDiv").show();

                    var trs="";

                    for(var i=0;i<ships.length;i++){

                        trs+="<tr><td>"+ships[i].mmsi+"</td><td>"+ships[i].vesselName+"</td></tr>";

                    }

                    $("#bindShipmmsiDiv table tbody").append(trs);

                    //给tr注册点击事件

                    $("#bindShipmmsiDiv table tbody tr").click(function(){

                        $(this).addClass('select_tr').siblings().removeClass('select_tr');

                    });

                    $("#bindShipmmsiDiv table tbody tr").dblclick(function(){

                        fillShipMMSIAndName(this);

                        $("#bindShipmmsiDiv").hide();

                    });

                }

            }

        }

    });

3、通过jquery的 $("form").serialize() 可以将form表单的数据序列化后提交到后台,因此通过ajax可以操作form表单并处理返回的数据。

$.ajax({
url : 'deliveryWarrant/update.do',

data : $('#myform').serialize(),

type : "POST",

success : function(data) {


var res = eval('(' + data + ')');


if (res && res.success == true) {    



alert(res.message);


location.href="/godownWarrant/findToDeliveryWarrant.do?godownWarrant.code="+$("#myform input[name=godownWarrant\\.code]").val();


} else {



alert(res.message);


}

}

});

4、防止乱码的处理方法:

jsp页面:charset:utf-8
servlet:utf-8
filter:utf-8
在PrintWriter out = response.getWriter()之前加一句
response.setCharacterEncoding("UTF-8")就可以解决乱码的问题。
但是得记住一定要放在声明PrintWwrite之前。

总之,前台界面,java文件,数据库和数据库的连接都有采用统一编码,才不会出现乱码等情况

Javascript 相关文章推荐
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
Sep 30 Javascript
js获取浏览器基本信息大全
Nov 27 Javascript
初识Node.js
Mar 20 Javascript
js 弹出虚拟键盘修改密码的简单实例
Oct 10 Javascript
Vue-resource实现ajax请求和跨域请求示例
Feb 23 Javascript
前端构建工具之gulp的语法教程
Jun 12 Javascript
JavaScript面向对象中接口实现方法详解
Jul 24 Javascript
JavaScript中的null和undefined用法解析
Sep 30 Javascript
javascript实现移动端红包雨页面
Jun 23 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
Nov 13 Javascript
JavaScript前后端JSON使用方法教程
Nov 23 Javascript
代码解析React中setState同步和异步问题
Jun 03 Javascript
js函数在frame中的相互调用详解
Mar 03 #Javascript
window.onload追加函数使用示例
Mar 03 #Javascript
js this函数调用无需再次抓获id,name或标签名
Mar 03 #Javascript
解决Jquery鼠标经过不停滑动的问题
Mar 03 #Javascript
jquery的父子兄弟节点查找示例代码
Mar 03 #Javascript
js二维数组定义和初始化的三种方法总结
Mar 03 #Javascript
JS二维数组的定义说明
Mar 03 #Javascript
You might like
PHP 的几个配置文件函数
2006/12/21 PHP
Apache中php.ini的设置方法
2013/02/28 PHP
DWZ+ThinkPHP开发时遇到的问题分析
2016/12/12 PHP
jQuery的Ajax时无响应数据的解决方法
2010/05/25 Javascript
让IE6支持min-width和max-width的方法
2010/06/25 Javascript
javascript判断ie浏览器6/7版本加载不同样式表的实现代码
2011/12/26 Javascript
获取下拉列表框的值是数组,split,$.inArray示例
2013/11/13 Javascript
js跳转页面方法总结
2014/01/29 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
JavaScript深度复制(deep clone)的实现方法
2016/02/19 Javascript
nodejs如何获取时间戳与时间差
2016/08/03 NodeJs
JS验证 只能输入小数点,数字,负数的实现方法
2016/10/07 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
jQuery实现淡入淡出的模态框
2017/02/09 Javascript
详解axios在node.js中的post使用
2017/04/27 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
Vue两个版本的区别和使用方法(更深层次了解)
2020/02/16 Javascript
bootstrap-closable-tab可实现关闭的tab标签页插件
2020/08/09 Javascript
OpenLayers3实现对地图的基本操作
2020/09/28 Javascript
在Python的Tornado框架中实现简单的在线代理的教程
2015/05/02 Python
简单介绍Python的Django框架的dj-scaffold项目
2015/05/30 Python
浅谈python中get pass用法
2019/03/19 Python
如何用Python徒手写线性回归
2021/01/25 Python
英国领先的体验日提供商:Buyagift
2019/04/19 全球购物
奥地利智能家居和智能生活网上商店:tink.at
2019/10/07 全球购物
马智宇结婚主持词
2014/04/01 职场文书
三分钟英语演讲稿
2014/04/24 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
党的群众路线整改落实情况汇报
2014/10/28 职场文书
2014年就业工作总结
2014/11/26 职场文书
2015年党支部公开承诺书
2015/01/22 职场文书
文化大革命观后感
2015/06/17 职场文书
施工安全责任协议书
2016/03/23 职场文书
Python字符串常规操作小结
2022/04/03 Python
解决MySQL Varchar 类型尾部空格的问题
2022/04/06 MySQL