第一种:通过struts接收

(function ($) {
$("#btnsave").click(function () {
var params = {};
params["gaglid.dwfd"] = $("#dwfd").val();
params["gagl.gamc"] = $("#gamc").val();
<%-- console.log($.param(params,true));--%>
<%-- console.log(decodeURIComponent($.param(params)));--%>
<%-- console.log(encodeURI(encodeURI(decodeURIComponent($.param(params)))));--%>
console.log($.param(params,true));
var jqxhr = $.ajax({
url: "save1Gagl.action?_=" + new Date().getTime(),
type: "post",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data: encodeURI($.param(params,true)), //ajax传数组参数给struts2自动接收
dataType: "text"
});
jqxhr.done(function (data) {
alert(data);
});
});
})($);

后台定义gaglid和gagl

public void save1()
{
try {
if(null==gaglid||null==gaglid.getBh()||this.gaglid.getBh().equals(""))
{
this.gaglid.setBh(this.getbhmethod());
}
gagl.setId(gaglid);
gagl.setGamc(URLDecoder.decode(gagl.getGamc(), "utf-8")); // gagl_Ithc_Server.saveOrUpdate(gagl);
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("application/x-www-form-urlencoded; charset=utf-8");
PrintWriter out;
out = response.getWriter();
out.write("success");
out.flush();
out.close(); } catch (IOException e) {
e.printStackTrace();
} }

  

第二种:手动接收

//把要保存的个案,流调,送检单,传染病整合成一个js对象
var gamerge={};
gamerge.gagl=gamodel;
gamerge.lxbdc=lxbdcmodel;
gamerge.listsjdj=objs;
gamerge.listcrbbg=crbbgobjs;
var jqxhrga = $.ajax({
url: "save2AjaxGamerge.action?_=" + new Date().getTime(),
type: "post",
contentType: "application/json;charset=utf-8",
data:escape(encodeURIComponent(JSON.stringify(gamerge))), //把js对象转换成json JSON.stringify(objs)
dataType: "text"
});
jqxhrga.done(function (data) {
alert(data);
window.opener.location.href=window.opener.location.href;
window.close(); });
jqxhrga.fail(function(e){
alert('保存个案出错'+e);
});

 后台手动接收

HttpServletRequest req=ServletActionContext.getRequest();
try {
req.setCharacterEncoding("utf-8");
String t=readJSONStringFromRequestBody(req);
t=java.net.URLDecoder.decode(java.net.URLDecoder.decode(t,"utf-8"),"utf-8"); //处理时间
GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
public Date deserialize(final JsonElement json, final Type typeOfT, final JsonDeserializationContext context)
throws JsonParseException {
try {
return df.parse(json.getAsString());
} catch (ParseException e) {
return null;
}
}
});
Gson gson = gsonBuilder.create();
GaLdSjCrb galdsjcrb=gson.fromJson(t, new TypeToken<GaLdSjCrb>() {
}.getType());
String tsxx="保存成功!";

HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("application/x-www-form-urlencoded; charset=GBK");
PrintWriter out = response.getWriter();
out.write(tsxx);
out.flush();
out.close();

  

 

jquery ajax 传递js对象到后台的更多相关文章

  1. springMVC通过ajax传递参数list对象或传递数组对象到后台

    springMVC通过ajax传递参数list对象或传递数组对象到后台 环境: 前台传递参数到后台 前台使用ajax 后台使用springMVC 传递的参数是N多个对象 JSON对象和JSON字符串 ...

  2. jQuery ajax 传递JSON数组到Spring Controller

    jQuery ajax传递单个JSON对象到后台很容易,这里记录的是传递多个JSON对象组成的JSON数组到java 后台,并说明java如何解析JSON数组. 1.js代码 var relation ...

  3. ASP.NET jquery ajax传递参数

    第一种:GET传递 前台 ajax   GET 传递 :即在请求的地址后面加上参数,URL地址长度有显示,安全性低 后台接收:Request.QueryString[“参数名字”]! 例如: func ...

  4. mvc jquery ajax传递数组null问题

    mvc jquery ajax传递数,  areaIds是个int数组.后台action用list<int>接收.当我想传空值时,先用null传递,结果action收到的AreaIds竟然 ...

  5. .Net之使用Jquery Ajax通过FormData对象异步提交图片文件到服务端保存并返回保存的图片路径

    前言: 首先对于图片上传而言,在我们的项目开发中可以说出现的频率是相当的高的.这篇文章中,我将要描述的是在我们.Net中如何使用Jquery Ajax通过FormData对象异步提交图片文件到后台保存 ...

  6. C#在WinForm中使用WebKit传递js对象实现与网页交互的方法

    这篇文章主要介绍了C#在WinForm中使用WebKit传递js对象实现与网页交互的方法,涉及针对WebBroswer控件及WebKit控件的相关使用技巧,需要的朋友可以参考下 本文实例讲述了C#在W ...

  7. jquery ajax传递多个对象或数组到后台

    1.js对象创建:因为需要把对象json序列化后,才能传递到后台,后台根据json字符串进行反序列化. 2.Jquery   $.ajax方法的配置 针对$.ajax方法的配置参数需要进行修改: 1) ...

  8. JS AJAX传递List数组到后台(对象)

    今天在写代码的时候,碰到的问题,百度了一下,发现原来AJAX传递List数据是可以的,之前还一直用JSON序列化(new Array()数组设置)进行传值的. var _list = {}; //等价 ...

  9. jquery ajax传递数组给php

    写成:var data = {'item[]':item}; $.post(url,data,function(return_data) 写成item:item会导致数据缺失. 更多:http://w ...

随机推荐

  1. makefile 中定义宏位置需要注意一下

    CUR_DIR = $(shell pwd) CFLAGS = -g -Wall GCC = gcc GXX = g++ TARGET = exe.out SRC_FILES += $(shell f ...

  2. EnCase v7 search hits in compound files?

    I used to conduct raw search in EnCase v6, and I'd like to see if EnCase v7 raw search could hit key ...

  3. vm虚拟机里的桥接模式下“复制物理网络连接状态”作用

    前提:真实主机可以上网 勾选,虚拟机也可以上网 不勾选,虚拟机不可以上网

  4. 0511 backlog 项目管理

    SCRUM 这次的作业就是确定SCRUM的计划,确定sprint backlog的一个冲刺周期,而这个周期是两个星期.争取在两周内发布1.0版本. 本次作业以网站构建为主: ID       NAME ...

  5. 1Android系统移植与驱动开发概述

    1.Android系统架构分为四层,从下至上依次为Linux内核层,C/C++代码库.Android SDK API.应用程序,要熟悉每一层的内容以及功能: 2.Android移植分为应用移植和系统移 ...

  6. JavaScript高级 引用类型(二)《JavaScript高级程序设计(第三版)》

    五.Function类型 是JS中最重要的一种引用类型 构造方式:(三种) 函数声明: 函数表达式定义: 函数构造器: 没有重载: 如果有两个相同函数名的函数,执行时,执行最近被定义的一次. 函数声明 ...

  7. 转:OpenCms 9.0.1汉化

    LHD私人汉化. 1.完成安装OpenCms 2.如果正确安装,在浏览器输入以下地址即可打开登录页面(默认账号/密码:Admin/admin) http://localhost:8080/opencm ...

  8. c#的基础入门回顾

    定义:.net 是平台 c#是语言 .net 可以做什么:winform (QQ软件 电脑管家软件等 桌面应用程序)   . asp.net (淘宝网站,京东网站,当当网站等internet网站) . ...

  9. Azkaban 作业调度

    转载一篇不错的文章:http://www.cnblogs.com/smartloli/p/5191155.html

  10. Java字符判断

    从键盘上输入一个字符串,遍历该字符串中的每个字符,若该字符为小写字母,则输出“此字符是小写字母”:若为大写字母,则输出“此字符为大写字母”:否则输出“此字符不是字母”. 代码入下: import ja ...