一般处理程序页ashx 序列化 Json数组
json传递数组到一般处理程序页,序列化为实体类的方法,可以解决.ENT framework 3.5以前的项目,
3.5以后的项目可以用System.ServiceModel.Web和System.Runtime.Serialization解决,当然也可以使用这种方案。
下面是代码:
JS
function PurchaseAutonomy() {
var r = ;
var parmArr = new Array();
$("#dataTb tbody tr").each(function () {
var ch = $(this).children().eq().children().eq().attr("checked");
var num = $(this).children().eq().children().eq().val();
if (ch == true)
{
if (IsNum(num)) {
return false;
} else {
parmArr[r] = {
PRODUCT_ID: $(this).children().eq().text(),
PRODUCT_NAME: $(this).children().eq().text(),
ORG_ID: $(this).children().eq().children().eq().val(),
JS_PRICE: $(this).children().eq().children().eq().val(),
NOS_PRICE: $(this).children().eq().children().eq().val(),
PRODUCT_PRICE: $(this).children().eq().children().eq().val(),
PURCHASE_NUM: $(this).children().eq().children().eq().val()
};
r++;
}
}
});
if (r > ) {
$.MsgBox.Confirm("温馨提示", "生成预订单,确定继续吗?温馨提示", function () {
var a = parmArr;
$.ajax({
type: "POST",
url: "/DataServer/Purchase/PurchaseAdd.ashx",
data: { parmArr: JSON.stringify(parmArr),user_id:<%=user_id%>,bm_id:<%=bm_id%> },
datatype:"json",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
success: function (result) {
if (result == "") {
$.MsgBox.Alert("提示", "生成采购计划成功!");
$("#dataTb tbody tr input[type='checkbox']").attr("checked",false);
$("#dataTb tbody tr input[name='purchase_num']").val("");
} else {
$.MsgBox.Alert("提示", "生成采购计划失败!");
return false;
}
}
});
});
} else {
$.MsgBox.Alert("提示", "请选择要处理的记录!");
return false;
}
}
ASHX 画面:
引用:using Newtonsoft.Json;
接收数组字符串:
String parmArr = context.Request.Form["parmArr"];
序列化为实体类
List<ET_PURCHASE_ITEM> list = new List<ET_PURCHASE_ITEM>();
list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ET_PURCHASE_ITEM>>(parmArr);
实体类:
/// <summary>
/// ET_PURCHASE_ITEM:实体类(属性说明自动提取数据库字段的描述信息)
/// </summary>
[Serializable]
public partial class ET_PURCHASE_ITEM
{
public ET_PURCHASE_ITEM()
{ }
#region Model
private decimal? _org_id;
private decimal? _product_id;
private string _product_name;
private decimal? _js_price;
private decimal? _nos_price;
private decimal? _purchase_num=;
private decimal? _product_price; /// <summary>
///
/// </summary>
public decimal? ORG_ID
{
set { _org_id = value; }
get { return _org_id; }
}
/// <summary>
///
/// </summary>
public decimal? PRODUCT_ID
{
set { _product_id = value; }
get { return _product_id; }
}
/// <summary>
///
/// </summary>
public string PRODUCT_NAME
{
set { _product_name = value; }
get { return _product_name; }
}
/// <summary>
///
/// </summary>
public decimal? JS_PRICE
{
set { _js_price = value; }
get { return _js_price; }
}
/// <summary>
///
/// </summary>
public decimal? NOS_PRICE
{
set { _nos_price = value; }
get { return _nos_price; }
}
/// <summary>
///
/// </summary>
public decimal? PURCHASE_NUM
{
set { _purchase_num = value; }
get { return _purchase_num; }
} /// <summary>
///
/// </summary>
public decimal? PRODUCT_PRICE
{
set { _product_price = value; }
get { return _product_price; }
} #endregion Model }
Newtonsoft.Json.dll 下载地址
http://files.cnblogs.com/files/shuaichao/Newtonsoft.Json.rar
一般处理程序页ashx 序列化 Json数组的更多相关文章
- java list序列化json 对象、json数组
list<T> 序列化 json对象 ----------- JSONObject -------JSONObject.toJSONString(str); 解析:JSONObj ...
- json数组的序列化和反序列化json数组的序列化和反序列化
如题,我就不多说了,自己看代码的,很好理解 using System; using System.Collections.Generic; using System.Web; using System ...
- jQuery获取一般处理程序(ashx)的JSON数据
昨天有在开发的软件生产线生产流程,RFID扫描IC卡的数据,当中有用到jQuery获取一般处理程序(ashx)的JSON数据.今有把它写成一个小例子,望需要的网友能参考. 在网站中,创建一个一般应用程 ...
- C# Json数组序列化和反序列总结
1.创建json数组,例: JArray arrFile = new JArray(); arrFile.Add(new JObject() { new JProperty("FilePat ...
- JSON数组序列化C#方法
/// <summary> /// dataTable转换成Json格式 JSON对应关系 三层数组 /// </summary> /// <param name=&qu ...
- select绑定json数组对象 asp.net
ashx处理页 string JsonList = "["; IList<Models.Channel> ilist = BLL.ChannelManager.GetA ...
- 将JSON数组显示前台Table中
将JSON数组显示前台Table中 在最近的学习中遇到一个小问题,如何把JSON数组显示在前台的table中,经过一番借鉴和学习之后终于解决了这个问题.具体的代码如下: (前提:利用ajax获取过来的 ...
- 使用QtScript库解析Json数组例子
本文转载自:http://blog.sina.com.cn/s/blog_671732440100uwxh.html 使用qtscipt库解析json数组首先在工程文件中加 QT += ...
- 序列化json对象,通过ajax传入asp.net mvc后台
序列化json对象,通过ajax传入asp.net mvc后台 序列化json对象,通过ajax传入asp.net mvc后台 今天遇到一个问题,准备把组织好的json对象通过jquery.aja ...
随机推荐
- 细说JavaScript对象(1):对象的使用和属性
JavaScript 中的一切都可以视为对象,除了两个特例:null 和 undefined. false.toString(); // 'false' [1, 2, 3].toString(); / ...
- SQL Server 2017 EXPRESS 安装 SQLCMD 设置远程连接
1.配置管理器内启动TCP/IP协议(端口改为1433)以及加入防火墙允许 2.进入本地实例: cmd Microsoft Windows [版本 ] (c) Microsoft Corporatio ...
- JAVA生成问答式验证码图片,支持加减算法
原文:http://liuguihua0823.iteye.com/blog/1511355 import java.awt.Color; import java.awt.Font; import j ...
- Java迭代器原理
1迭代器模式 迭代器是一种设计模式,这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示. 一般实现方式如下:(来自)
- oracle数据库中函数和存储过程中的区别
一.函数必须有返回值,过程没有返回值: 二.函数可以单独执行,过程必须通过execute执行: 三.函数可以嵌入SQL中执行,过程不能. 可以将比较复杂的查询写成函数,然后在过程中调用.
- 【转】javascript 的类,原型,继承的理解
原文: https://www.cnblogs.com/codernie/p/9098184.html ------------------------------------------------ ...
- 【重点突破】—— React实现富文本编辑器
前言:富文本编辑器Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器. 一.安装插件 react-draft-wysiwyg: 文本编辑器插件 dra ...
- 2017.7.31 ELK+logback+redis的使用
参考来自:spring mvc+ELK从头开始搭建日志平台 0 前提 ELK安装成功 redis安装成功 使用logback的项目运行成功 1 配置文件 1.1 pom.xml 为了使用logback ...
- json-server模拟接口获取mock数据
转载:http://blog.csdn.net/stevennest/article/details/76167343 安装json-server 运行以下命令 cnpm install json-s ...
- [转]php-fpm配置具体解释
[转]php-fpm配置具体解释 php-fpm具体解释 原文链接:http://php-fpm.anight.org/wiki:http://www.php-fpm.com/翻译:http://sy ...