前台给后台传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 ...
随机推荐
- Bootstrap<基础十> 响应式实用工具
Bootstrap 提供了一些辅助类,以便更快地实现对移动设备友好的开发.这些可以通过媒体查询结合大型.小型和中型设备,实现内容对设备的显示和隐藏. 需要谨慎使用这些工具,避免在同一个站点创建完全不同 ...
- JavaScript 继承
许多OO语言都支持两种继承方式,接口继承和实现继承.接口继承只继承方法签名,而实现继承则继承实际的方法.由于在ECMAScript中,函数没有签名,无法实现接口继承,只支持实现继承,而且其实现继承主要 ...
- 认识WCF
WCF 一.什么是WCF? 1.Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口.它是.NET框 ...
- Unique Paths II
这题在Unique Paths的基础上增加了一些obstacle的位置,应该说增加的难度不大,但是写的时候对细节的要求多了很多,比如,第一列的初始化会受到之前行的第一列的结果的制约.另外对第一行的初始 ...
- Oracle存储过程中异常Exception的捕捉和处理
Oracle存储过程中异常的捕捉和处理 CREATE OR REPLACE Procedure Proc_error_process ( v_IN in Varchar2, v_OUT Out Var ...
- hibernate开发(1)
1 什么是ORM OR-mapping 是 object relational mapping 对象关系映射,是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换.解决了不同数据库s ...
- 关于JavaScript和html的随笔
最近听了一些关于JavaScript和html的讲课和读了一些书籍.因为我是给项目做网站知道的,所以要特别的注意和努力.JavaScript是一门挺好用的脚本语言,比较简单灵活,在这上面我深有体会,因 ...
- Android 中dp和px
dp是虚拟像素,在不同的像素密度的设备上会自动适配,比如: 在320x480分辨率,像素密度为160,1dp=1px 在480x800分辨率,像素密度为240,1dp=1.5px 计算公式: 1dp* ...
- 项目组J2ee程序员的标志,你中招没 转载+评论
原文在此 校园级别的程序员的标志: 代码中最多的是嵌套if(null == xxx),还要告诉你,null必须写在前面,我靠. 防止把==写成=,c语言时代常犯的错误.由于null不能做左值,在写=的 ...
- 涵涵和爸爸习惯养成进度表(一)(May 5 - May 25)
规则说明 三周时间(21天)内,没有哭脸,不超过三个无表情脸,可以给一个奖励(动画书等) 涵涵违反规则,在爸爸和妈妈都同意的情况下,可以给无表情脸 爸爸违反规则,在妈妈和涵涵都同意的情况下,可以给无表 ...