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 相关文章推荐
JAVASCRIPT 对象的创建与使用
Mar 09 Javascript
javascript 面向对象的JavaScript类
May 04 Javascript
JS拖动技术 关于setCapture使用
Dec 09 Javascript
在jQuery ajax中按钮button和submit的区别分析
Oct 07 Javascript
一个字符串反转函数可实现字符串倒序
Sep 15 Javascript
js禁止页面刷新与后退的方法
Jun 08 Javascript
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
Nov 06 Javascript
基于javascript如何传递特殊字符
Nov 30 Javascript
jQuery文件上传控件 Uploadify 详解
Jun 20 Javascript
vue-cli随机生成port源码的方法
Sep 02 Javascript
微信小程序实现pdf、word等格式文件上传的方法
Sep 10 Javascript
javascript跳转与返回和刷新页面的实例代码
Nov 20 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转义输出HTML到JavaScript
2015/03/27 PHP
PHP中的命名空间详细介绍
2015/07/02 PHP
学习php设计模式 php实现适配器模式
2015/12/07 PHP
js加解密 脚本解密
2008/02/22 Javascript
JS的反射问题
2010/04/07 Javascript
nullJavascript中创建对象的五种方法实例
2013/05/07 Javascript
探讨javascript是不是面向对象的语言
2013/11/21 Javascript
模拟用户点击弹出新页面不会被浏览器拦截
2014/04/08 Javascript
HTML,CSS,JavaScript速查表推荐
2014/12/02 Javascript
js实现上传图片预览的方法
2015/02/09 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
2016/04/12 Javascript
JavaScript九九乘法口诀表的简单实现
2016/10/04 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
Vue在 Nuxt.js 中重定向 404 页面的方法
2019/04/23 Javascript
vue瀑布流组件实现上拉加载更多
2020/03/10 Javascript
bpython 功能强大的Python shell
2016/02/16 Python
Python使用Pycrypto库进行RSA加密的方法详解
2016/06/06 Python
使用Python的Flask框架表单插件Flask-WTF实现Web登录验证
2016/07/12 Python
python抓取网站的图片并下载到本地的方法
2018/05/22 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
在python中实现将一张图片剪切成四份的方法
2018/12/05 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
2019/04/17 Python
python+numpy实现的基本矩阵操作示例
2019/07/19 Python
python 求定积分和不定积分示例
2019/11/20 Python
给Django Admin添加验证码和多次登录尝试限制的实现
2020/07/26 Python
Python模块常用四种安装方式
2020/10/20 Python
HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)
2017/01/05 HTML / CSS
laravel使用redis队列实例讲解
2021/03/23 PHP
军训考核自我鉴定
2014/02/13 职场文书
影视广告专业求职信
2014/09/02 职场文书
2014年体育部工作总结
2014/11/13 职场文书
元旦晚会开场白
2015/05/29 职场文书
大学体育课感想
2015/08/10 职场文书
学困生帮扶工作总结
2015/08/13 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书