Ajax 通过post提交数据到一般处理程序,后台快速获取数据的方法
1.通过serialize()方式传递json数据
注意:前端html表单 name值应该为后台类中的字段名称 例如:<input name="S_类字段名称" type='text' id="S_类字段名称" />
1.1 js
var x = encodeURI(jQuery("#xmfs input,select,textarea").serialize()); jQuery.ajax({type: "POST",url: "../Handler/zHandler.ashx?Action=AddRew",data: x,success: function (datad) {alert("提交成功!");},dataType: "json" });
js serialize()
1.2 cs通过类获取post提交的数据
L_CPROJECT project = new L_CPROJECT(); Type Pproject = project.GetType(); GetFormValue(project, Pproject);//处理附件问题
1.3 GetFormValue 方法
private void GetFormValue(object project, Type Pproject) {foreach (string item in con.Request.Form.AllKeys){PropertyInfo cons = Pproject.GetProperty(item.Replace("S_", ""));//表单内的input等的name值命名规范为S_类字段名if (cons != null){var valtype = cons.PropertyType;//判断convertsionType是否为nullable泛型类if (valtype.IsGenericType && valtype.GetGenericTypeDefinition().Equals(typeof(Nullable<>))) {//如果type为nullable类,声明一个NullableConverter类,该类提供从Nullable类到基础基元类型的转换 System.ComponentModel.NullableConverter nullableConverter = new System.ComponentModel.NullableConverter(valtype);//将type转换为nullable对的基础基元类型 valtype = nullableConverter.UnderlyingType;}string text = HttpUtility.UrlDecode(Request.Form[item].Trim());cons.SetValue(project, Convert.ChangeType(text, valtype), null);}} }
获取传递值
2.通过JSON.stringify(data) 多条数据传递
注意:arr.push({ SUBID: doc.attr("su"), PURID: 12, SU: doc.val(),SU:12 })中的每个name与L_CSECTION类中的字段名称对应
js:JSON.stringify(arr)
var arr = new Array(); jQuery(".new").each(function (index, link) {var doc = jQuery(this).find(".thisid");arr.push({ SUBID: doc.attr("su"), PURID: 12, SU: doc.val(),SU:12 }); }); jQuery.ajax({type: "POST",url: "../Handler/zProjndler.ashx?Action=AddSUBPACKAGE",data: JSON.stringify(arr),success: function (datas) {},dataType: "json" });
JSON.stringify(arr)
cs
var sr = new StreamReader(Request.InputStream);
var stream = sr.ReadToEnd();
List<L_CSECTION> _list = jsonHelp.getObjectByJson<L_CSECTION>(stream);
for (int i = 0; i < _list.Count; i++)
{//对数据进行操作
}
jsonHelp
public static class jsonHelp {internal static List<T> getObjectByJson<T>(string jsonString){// 实例化DataContractJsonSerializer对象,需要待序列化的对象类型DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(List<T>));//把Json传入内存流中保存 MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));// 使用ReadObject方法反序列化成对象object ob = serializer.ReadObject(stream);List<T> ls = (List<T>)ob;return ls;}}
将json数据转换为object对象
转载于:https://www.cnblogs.com/lovable/p/7889564.html
Ajax 通过post提交数据到一般处理程序,后台快速获取数据的方法相关推荐
- 【Layui】数据表格(与后台交互获取数据)
html <table id="userList" lay-filter="userList"></table> js //用户列表 v ...
- layui 读取本地excel内容_layui之数据表格--与后台交互获取数据的方法
jsp或html js //用户列表 var tableIns = table.render({ elem: '#userList', url : 'userAction_findAll.action ...
- Pandas处理dataframe的文本数据列:使用str属性获取数据列的字符串方法类、split函数基于指定分隔符拆分数据列的内容为列表、使用len计算每个列表的长度
Pandas处理dataframe的文本数据列:使用str属性获取数据列的字符串方法类.split函数基于指定分隔符拆分数据列的内容为列表.使用len计算每个列表的长度 目录
- getdata提取曲线数据_Origin如何从图表中获取数据
点击上方"蓝字",一起愉快的玩耍吧!Origin如何从图表中获取数据01图片分析软件安装 一.GetData Graph Digitizer安装 使用范围: 1.需要引用别人文章中 ...
- python使用elasticsearch维护数据_使用Python对ElasticSearch获取数据及操作
#!/usr/bin/env python#-*- coding: utf-8 -*- """@Time : 2018/7/4 @Author : LiuXueWen @ ...
- vue获取接口数据_c#中HttpWebRequest调用接口获取数据
c#中HttpWebRequest调用接口获取数据PART 01-封装接口 将post请求进行封装,以便调用使用: /// /// 请求后台地址/// 请求参数/// public string P ...
- 【实习小tip】多层dialog弹窗遮罩问题、elementUI的form表单组件的select框在只读的情况下没办法拿到传来的数据、从弹窗子组件获取数据后需要刷新页面
解决elementui多层dialog弹窗遮罩问题 弹窗套娃出现了整个屏幕都是遮罩层的问题,需要鼠标点击一下才能正常. 在弹窗组件代码上加上 append-to-body 就可以了,表示这个弹窗是嵌在 ...
- wps html数据表,WPS表格怎么快速录入数据?
步骤 无序录入 无序录入就是没有顺序的,比如说我们现在想把这个表里面空白的地方做成像旁边那个表格一样都写未考(如下图),方法有很多,但我认为最快的方法是这样做的,接下来看一下. 你假象里面有很多空的单 ...
- 实时数据采集与处理:如何从各种数据源中快速获取数据?
作者:禅与计算机程序设计艺术 随着互联网.大数据.物联网等新兴技术的发展,越来越多的人们开始关注和使用基于这些技术的应用服务.其中,实时数据采集与处理(Real-Time Data Collectio ...
最新文章
- html怎么样取jsp中的路径,jsp中获得路径的两种方法和获得url路径的方法(推荐)
- linux删去分区的文件夹,如何恢复 Linux 分区下误删的文件?
- (oracle)二、创建数据库
- PAT (Basic Level) Practice (中文)C++ python 语言实现 —— 题解目录
- Chinaren,逐渐变为垃圾了。
- SAP C4C - the entity BO node XXXX is unknown
- 老大爷的手法一看就不一般!
- python logging模块简单使用
- windows 下 安装mysql 出现 “ ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password
- yum 找不到程序,yum更换国内阿里源
- C语言课后习题(33)
- 教你如何监控 Apache?
- Java多窗口编程示例
- Canon imageRUNNER 2525i打印机驱动通过IP地址进行安装
- 人机工程学产品设计案例_【设计案例】一组电子产品设计的合辑
- 所用软件安装及环境配置
- linux中find查找文件和查找文件内容
- 正则表达式:密码必须为8~16位非空字符,并包含大小写字母、数字、特殊字符
- 计算机音乐说散就散,说散就散(精彩音乐汇)
- 带图片的日历html,HTML漂亮的日历插件
热门文章
- 【京东】商品详情页采集
- 基于JavaSpringboot+vue国风汉服文化交流宣传系统
- php解析百度云真实地址吗,百度网盘怎么获取真实下载链接 百度云资源真实地址解析教程...
- MySQL基础学习(六)——聚合函数
- 跨境支付的噱头,你读懂了吗?
- Linux下C/C++实现以十六进制的形式显示命令(xxd)
- Linux直接在通过终端打开图片文件
- 清华计算机考研复试机试,请问清华考研计算机复试考什么
- 获取客户端mac地址 php,js获取客户端mac地址的方法
- 计算机主机是什么系统吗,电脑RAM和ROM的区别是什么?RAM和ROM有哪些作用?