前台给后台传JSON字符串,后台解析并保存
前台
function BMSure() {
var DanWeiName = $("[id$='BusinessName']").val();
var Address = $("[id$='Address']").val();
if ((DanWeiName != "") && (Address != "")) {
var planGuid = $("[id$='hid_planGuid']").val();
//var displayname = $("[id$='hid_displayName']").val();
var num = $("[id$='hid_sum']").val();
$.ajax({
type: "POST",
contentType: "application/json;charset=utf-8", url: "../Ashx/SaveBMInfo.ashx?PlanGuid=" + planGuid,
data: JSON.stringify(GetJsonData()),
dataType: "json",
success: function (message) {
if (message == ) { ConfirmBM();
//ReturnLogin(DanWeiName); }
},
error: function (message) {
if (message == ) {
layer.msg("保存失败");
}
}
})
}
else {
layer.msg("请将单位信息填写完整");
return false;
}
}; function ReturnLogin(DanWeiName) {//返回登录名密码
layer.open({
type: ,
title: "提示信息",
area: ['400px', '220px'],
content: ['LoginID_PassWord.aspx?DanWeiName=' + DanWeiName],
skin: 'layer-ext-iframe',
//关闭按钮刷新父页面
cancel: function () {
window.location.reload();
}
});
} function ConfirmBM() {
//是否继续报名
layer.confirm('报名成功,是否继续报名?',
{
skin: 'layui-layer-molv', btn: ['继续报名', '关闭'] //按钮
}, function (index) {
layer.close(index);
window.location.reload();
}, function (index) {
layer.close(index); var index2 = parent.layer.getFrameIndex(window.name);
parent.layer.close(index2);//关闭弹出层
}); } function GetJsonData() {
var temp = $("[id$='hid_sum'").val();//添加人员的数量
var json_person = '';
for (var i = ; i <= temp; i++) {
var text = "";
$("[id$='addPerson" + i + "']").find("td").children("input").each(function () {
text += $(this).val() + ",";
})
var a = new Array();
a = text.split(',');
if (a != "" && a != null) {
var json_persontemp = {
"Name": a[],
"Sex": a[],
"Identity": a[],
"Brithday": a[],
"Phone": a[]
}
}
if (i == temp)
json_person += JSON.stringify(json_persontemp);
else
json_person += JSON.stringify(json_persontemp) + ','; }; var persontemp = eval('[' + json_person + ']'); var json = {
"DanWeiName": $("[id$='BusinessName']").val(),
"DetailAddress": $("[id$='Address']").val(),
"BelongFenJu": $("[id$='BelongFenJu']").val(),
"PersonData":
//JSON.parse(json_person)
persontemp }; return json;
}
后台(此处 使用SaveBMInfo 一般处理程序,后台直接写也一样)
public class SaveBMInfo : IHttpHandler
{
Epoint.KSPXBase.Bizlogic.BLL.B_PK_Unit b_unit = new Epoint.KSPXBase.Bizlogic.BLL.B_PK_Unit();
Epoint.KSPXBase.Bizlogic.BLL.B_PK_User b_user = new Epoint.KSPXBase.Bizlogic.BLL.B_PK_User();
Epoint.PeiXun.Bizlogic.BLL.PXBaoM.B_PX_BaoM b_baom = new Epoint.PeiXun.Bizlogic.BLL.PXBaoM.B_PX_BaoM();
M_PK_Unit m_unit = new M_PK_Unit();
M_PK_User m_user = new M_PK_User();
M_PX_BaoM m_baom = new M_PX_BaoM(); List<PersonDataJSON> list_PersonData = new List<PersonDataJSON>();
public void ProcessRequest(HttpContext context)
{
string result = "";
context.Response.ContentType = "application/json";
string PlanGuid = context.Request.QueryString["PlanGuid"].ToString(); var data = context.Request;
var sr = new StreamReader(data.InputStream);
var stream = sr.ReadToEnd();
var javaScriptSerializer = new JavaScriptSerializer();
var PostedData = javaScriptSerializer.Deserialize<RequestDataJSON>(stream); try
{
#region
if (PostedData != null)
{
m_unit.RowGuid = Guid.NewGuid().ToString();//单位唯一标识
m_unit.DanWeiName = PostedData.DanWeiName;//单位名称
m_unit.DetailAddress = PostedData.DetailAddress;//单位地址
m_unit.BelongFenJu = PostedData.BelongFenJu;//所属分局 --报名点
m_unit.LoginID = ConvertToPY(PostedData.DanWeiName);//登录名
m_unit.Password = common.authPassword("");//密码
m_unit.AddType = "";//报名方式 1-前台报名 2-后台添加 3-接口获取
m_unit.UserType = "";//会员类别 0-个人 1-企业 2-学校 3-培训机构
m_unit.IsEnable = "";
m_unit.DelFlag = "";
m_unit.Status = "";//会员状态
b_unit.Insert(m_unit); var peopleInfo = PostedData.PersonData;
for (int i = ; i < peopleInfo.Count; i++)
{
m_user.RowGuid = Guid.NewGuid().ToString();//人员唯一标识
m_user.LoginID = PostedData.PersonData[i].Identity;//登录名为身份证号码
m_user.Password = common.authPassword("");//密码
m_user.DanWeiGuid = m_unit.RowGuid;//单位Guid
m_user.DanWeiName = m_unit.DanWeiName;//单位名称
m_user.Name = PostedData.PersonData[i].Name;//人员姓名
if (PostedData.PersonData[i].Sex == "男")//性别
m_user.Sex = "";
else
m_user.Sex = "";
m_user.IdentityNum = PostedData.PersonData[i].Identity;//身份证号
m_user.BirthDay =Convert.ToDateTime(PostedData.PersonData[i].Brithday);//出生日期
m_user.MobilePhone = PostedData.PersonData[i].Phone;//手机号
m_user.AddType = "";//帐号添加方式 1-注册 2-企业添加 3-后台添加
m_user.UserType = "";//会员类别 0-个人 1-企业 2-学校 3-培训机构
m_user.IsEnable = "";
m_user.DelFlag = "";
m_user.Status = "";//会员状态
m_user.IdentityType = "";//身份证
b_user.Insert(m_user); m_baom.RowGuid = Guid.NewGuid().ToString();//报名唯一标识
m_baom.BMType = "";//报名类别
m_baom.AddDate = m_baom.OperateDate = DateTime.Now;//报名日期
m_baom.Name = m_user.Name;//姓名
m_baom.LoginID = m_user.LoginID;//登录名
m_baom.UserGuid = m_user.RowGuid;//人员Guid
m_baom.PlanGuid = PlanGuid;//计划Guid
m_baom.DanWeiGuid = m_unit.RowGuid;//单位Guid
m_baom.DanWeiName = m_unit.DanWeiName;//单位名称
m_baom.BaoMDNum = m_unit.BelongFenJu;//报名点 --所属分局
b_baom.Insert(m_baom);
}
}
#endregion
result = "";
}
catch (Exception ex)
{
result = "";
}
context.Response.ContentType = "text/plain";
context.Response.Write(result);
} public bool IsReusable
{
get
{
return false;
}
} public string ConvertToPY(string Text)
{
char[] chText = Text.ToCharArray();
string pyText = "";
foreach (char ch in chText)
{
pyText += new ChineseChar(ch).Pinyins[].Substring(, );
}
return pyText;
} public class RequestDataJSON
{
public string DanWeiName { get; set; }
public string DetailAddress { get; set; }
public string BelongFenJu { get; set; }
public List<PersonDataJSON> PersonData; }
public class PersonDataJSON
{//人员
public string Name { get; set; }
public string Sex { get; set; }
public string Identity { get; set; }
public string Brithday { get; set; }
public string Phone { get; set; }
}
}
前台给后台传JSON字符串,后台解析并保存的更多相关文章
- 前台的js对象数组传到后台处理。在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>
前台的js对象数组传到后台处理.在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>
- 后台给前台传JSON字符串,前台解析并拼接显示
后台传JSON public class CourseType : IHttpHandler { Epoint.PeiXun.Bizlogic.BLL.CourseLibrary.PX_CourseT ...
- 前台传递给后台的JSON字符串中的引号 “” 在JAVA后台被转义为 "
前台传递给后台的JSON字符串中的引号 "" 在JAVA后台被转义为 " 1.问题: 前台数据,JSON字符串带有引号 "" ,数据被传递到后台 ...
- springMVC中前台ajax传json数据后台controller接受对象为null
在jquery的ajax中,如果没加contentType:"application/json",那么data就应该对应的是json对象,反之,如果加了contentType:&q ...
- ajax往后台传json格式数据报415错误
问题描述: ajax往后台传json格式数据报415错误,如下图所示 页面代码 function saveUser(){ var uuId = document.getElementById(&quo ...
- easyui tree后台传json处理问题
一.tree json格式 [ { "id": 1, "text": "权限管理", "iconCls": " ...
- Kotlin入门(31)JSON字符串的解析
json是App进行网络通信最常见的数据交互格式,Android也自带了json格式的处理工具包org.json,该工具包主要提供了JSONObject(json对象)与JSONArray(json数 ...
- 动态Json字符串的解析
动态Json字符串的解析 对于传统的Json字符串,比如有规定属性的对象,通常都会采用反序列化的方式就可以了,例如下面的方式: DataContractJsonSerializer ser = new ...
- JSON字符串——后台解析系列
以前我们都是讲JSON字符串获取后,在前台进行展示.今天小编就交给大家后台解析展示数据的方法.非常方便,就以下代码: JObject obj = JObject.Parse(data); string ...
随机推荐
- Git & GitHub
使用 Git 和 GitHub 有一段时间了,总结下经验. 起初接触 Git 是先遇到 GitHub 的,当时傻傻分不清这两者的区别,毕竟名字都那么像,刚开始只想用酷酷的方法 clone 代码(SSH ...
- 关于StatusStrip控件和StatusBar控件的小试
今天,在网上查找资料,突然看到一个例子,但例子中提及的StatusBar控件,我发现在vs控件压根不存在,我就郁闷了,于是上网查找才知道,现在这个控件已经被StatusStrip控件给吞了,Statu ...
- 职工工资管理系统 --C语言
#include<stdio.h> #include<string.h> #include<stdlib.h> #define NUM 1000 void ente ...
- ROS笔记——创建简单的主题发布节点和主题订阅节点
在安装好ROS后,接着学习如何创建节点和节点之间的通信方式,以一个简单的主题发布节点和主题订阅节点说明. 节点是连接ROS网络等可执行文件,是实现某些功能的软件包,也是一个主要计算执行的进程. 一.创 ...
- php上传文件类型
下面提供一张IE和火狐浏览器的文件类型对照表: ie 火狐 id 后缀名 php识别出的文件类型 0 gif image/gif 1 jpg image/jpeg 2 png image/png 3 ...
- D2.Reactjs 操作事件、状态改变、路由
下面内容代码使用ES6语法 一.组件的操作事件: 1.先要在组件类定义内定义操作事件的方法,如同event handler.若我需要监听在组件内的Button的点击事件onClick,首先定义监听方法 ...
- spring事务详解(转载+高亮)
spring提供的事务管理可以分为两类:编程式的和声明式的.编程式的,比较灵活,但是代码量大,存在重复的代码比较多:声明式的比编程式的更灵活.编程式主要使用transactionTemplate.省略 ...
- GDB中汇编调试
GDB中汇编调试 1.输入代码 2.使用gcc - g example.c -o example -m32指令在64位的机器上产生32位汇编,时遇到问题使用-m32指令报错,参考卢肖明同学博客知道这是 ...
- Angular JS的依赖注入
依赖注入是一个在组件中给出的替代了硬的组件内的编码它们的依赖关系的软件设计模式.这减轻一个组成部分,从定位的依赖,依赖配置.这有助于使组件可重用,维护和测试. AngularJS提供了一个至高无上的依 ...
- java.io.IOException: Cannot run program "jad"
今天调试google tag manager, 需要看看google analytics source code,无奈没有源码,装个一个插件ejad 还是不行: java.io.IOException ...