前台给后台传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 ...
随机推荐
- java筛选法求素数
这本身没什么,代码一堆 发来纪念下而已 本来刚学习java,编写输出100以内的素数 对于我这个有代码运行性能洁癖的人(但是本身又不懂算法)来说,不能忍 于是看了些资料 参考: http://blog ...
- sass安装记录
之前曾经安装过一次sass,不过可惜没使用,现在换了电脑重新安装,又上网找了些资料,终于安装成功,现在就当做个记录方便下次安装. 首先 到官网下载个最新版的ruby :http://rubyinsta ...
- 使用CSDN Code将网站部署到Windows Azure Website上
在云计算时代,开发和部署应该是完全统一和集成的.在海外,开发者可以用github来管理他们的代码,并且直接部署到Windows Azure上.随着Windows Azure在国内的发布,我们发现,其实 ...
- 一个无聊的python + opencv 示例
opencv不用多说,先推荐一个给力的教程: https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_tutor ...
- C# 写的一个生成随机汉语名字的小程序
最近因为要做数据库相关的测试,频繁使用到测试数据,手动添加太过于麻烦,而且复用性太差,因此干脆花了点时间写了一个生成随机姓名和相关数据的类,贴在这里,有需用的同志们可以参考一下.代码本身质量不好,也不 ...
- flex页面刷新实现
页面刷新:navigateToURL(new URLRequest("javascript:location.reload();"),"_self"); 关闭浏 ...
- gnome3.X添加开机启动项
背景:升级gnome后发现gnome-session-properties不见了,想把sslocal随机启动遇到了麻烦... 特别说明:此为图形桌面开机启动项,因此只有通过图形桌面登陆用户后才能启动. ...
- xcode中得一个坑
因项目需求变动,我必须在coredata中的WorkLogModel表中添加一个字段:抄送人.起初我给这个字段起名为copyPerson,一切准备就绪后,发现从数据库读取这个copyPerson时,第 ...
- boost和std中的thread的引用参数
boost 1.60.0 先上代码: #include <boost/thread.hpp> #include <iostream> void add(int &i) ...
- excel 转换日期
早上一朋友问我excel中如何将类似这样“19850421”的文本日期转换为“1985-04-21”.我的第一反应就是直接设置单元格格式为日期,于是打开excel试了试结果显示“########### ...