一般处理程序页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 ...
随机推荐
- Python-爬虫-针对有frame框架的页面
有的页面会使用frame 框架,使用Selenium + PhantomJS 后并不会加载iframe 框架中的网页内容.iframe 框架相当于在页面中又加载了一个页面,需要使用Selenium 的 ...
- Oracle Study之-AIX6.1构建Oracle 10gR2 RAC(4)
Oracle Study之-AIX6.1构建Oracle 10gR2 RAC(4) 一.安装CRS补丁 在安装CRS之前,须要安装补丁p6718715_10203_AIX64-5L,否则在安装时会出现 ...
- curl 执行post请求
#curl -l -H "Content-type: application/json;charset=UTF-8" -H "X-Forwarded-For: 20.20 ...
- 【Hadoop】Hadoop MR 自定义排序
1.概念 2.代码示例 FlowSort package com.ares.hadoop.mr.flowsort; import java.io.IOException; import org.apa ...
- zabbix自定义监控项二
为zabbix增加支持传参的自定义监控项 例如使用zabbix来监控tcp的12种状态 tcp的12种状态可以通过man netstat来找到,即 LISTEN:等待从任何远端TCP 和端口的连接请求 ...
- hdu4671 思维构造
pid=4671">http://acm.hdu.edu.cn/showproblem.php? pid=4671 Problem Description Makomuno has N ...
- idea 热部署
- spring 配置多数据源 (可行)
可以看到AbstractRoutingDataSource获取数据源之前会先调用determineCurrentLookupKey方法查找当前的lookupKey,这个lookupKey就是数据源标识 ...
- 倍福TwinCAT(贝福Beckhoff)基础教程 松下驱动器如何执行绝对值清零
点击参数-参数一览,然后修改015为0(设置为绝对编码器方式),点击设定值变更,然后传送,EEP,将参数写入驱动器(保持USB线连接,重启驱动器并确认参数确是改成0了) 监视器-清除多圈数,清除之 ...
- C2:抽象工厂 Abstract Factory
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. 应用场景: 一系列相互依赖的对象有不同的具体实现.提供一种“封装机制”来避免客户程序和这种“多系列具体对象创建工作”的紧耦合 UM ...