Jquery 组合form元素为json格式,asp.net反序列化


Posted in Javascript onJuly 09, 2009

作者:敖士伟 Email:ikmb@163.com 转载注明作者
说明: 1、js根据表单元素class属性,把表单元素的name和value组合为json格式;用表单元素class属性可以针对性地组合JSON数据。
2、后端ASP.NET用JavaScriptSerializer反序列化为对象实列。
3、好处:简化了前端数据读取与后端数据赋值。

function GetJSONStr(class_name) { 
var a = []; 
//文本框 
$("." + class_name).filter(":text").each(function(i) { 
//alert(this.name); 
//alert(this.value); 
a.push({ name: this.name, value: this.value }); }); 
//下拉列表 
$("." + class_name).filter("select").each(function(i) { 
//alert(this.name); 
//alert(this.value); 
a.push({ name: this.name, value: this.value }); 
}); 
//单选框 
$("." + class_name).filter(":radio").filter(":checked").each(function(i) { 
//alert(this.name); 
//alert(this.value); 
a.push({ name: this.name, value: this.value }); 
}); 
//复选框开始 
var temp_cb = ""; 
$("." + class_name).filter(":checkbox").filter(":checked").each(function(i) { 
if (temp_cb.indexOf(this.name) == -1) { 
temp_cb += this.name + ","; 
} 
}); 
var temp_cb_arr = temp_cb.split(","); 
var cb_name = ""; 
var cb_value = ""; 
for (var temp_cb_i = 0; temp_cb_i < temp_cb_arr.length - 1; temp_cb_i++) { 
cb_name = temp_cb_arr[temp_cb_i]; 
var cb_value_length = $("input[name='" + temp_cb_arr[temp_cb_i] + "']:checked").length; 
$("input[name='" + temp_cb_arr[temp_cb_i] + "']:checked").each(function(i) { 
if (i == cb_value_length - 1) 
cb_value += this.value; 
else 
cb_value += this.value + ","; 
}); 
//alert(cb_name); 
//alert(cb_value); 
a.push({ name: cb_name, value: cb_value }); 
} 
//复选框结束 

//组合为JSON 
var temp_json = ""; 
for (var json_i = 0; json_i < a.length; json_i++) { 
if (json_i != a.length - 1) { 
temp_json += '"' + a[json_i].name + '":"' + a[json_i].value + '",'; 
} 
else { 
temp_json += '"' + a[json_i].name + '":"' + a[json_i].value + '"'; 
} 
} 
return "{" + temp_json + "}"; 
}

ASP.NET
public partial class test : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 
JavaScriptSerializer Serializer = new JavaScriptSerializer(); 
string r = Request.Form["msg"]; //{"Name":"MyName1","Single":"one"} 
t_json t_json_object = Serializer.Deserialize<t_json>(r); 
Response.Write(t_json_object.Name); 
Response.End(); 
} 
} 
class t_json 
{ 
public DateTime Name; 
public string Single; 
}
Javascript 相关文章推荐
Dom加载让图片加载完再执行的脚本代码
May 15 Javascript
jQuery标签替换函数replaceWith()的使用例子
Aug 28 Javascript
JavaScript中九种常用排序算法
Sep 02 Javascript
总结十个Angular.js由浅入深的面试问题
Aug 26 Javascript
jquery属性,遍历,HTML操作方法详解
Sep 17 Javascript
jquery实现表单获取短信验证码代码
Mar 13 Javascript
Vue 2.0 服务端渲染入门介绍
Mar 29 Javascript
AngularJS 限定$scope的范围实例详解
Jun 23 Javascript
JS检测window.open打开的窗口是否关闭
Jun 25 Javascript
webpack4 css打包压缩问题的解决
May 18 Javascript
jquery ajax加载数据前台渲染方式 不用for遍历的方法
Aug 09 jQuery
JS实现电脑虚拟键盘打字测试
Jun 24 Javascript
JS 巧妙获取剪贴板数据 Excel数据的粘贴
Jul 09 #Javascript
JavaScript 继承的实现
Jul 09 #Javascript
jquery text,radio,checkbox,select操作实现代码
Jul 09 #Javascript
javascript 字符 Escape,encodeURI,encodeURIComponent
Jul 09 #Javascript
jQuery 1.3 和 Validation 验证插件1.5.1
Jul 09 #Javascript
javascript xml为数据源的下拉框控件
Jul 07 #Javascript
JS 自动完成 AutoComplete(Ajax 查询)
Jul 07 #Javascript
You might like
浅析PHP程序防止ddos,dns,集群服务器攻击的解决办法
2013/06/18 PHP
php数组函数array_key_exists()小结
2015/12/10 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
文本框获得焦点和失去焦点的判断代码
2012/03/18 Javascript
js加入收藏夹代码(兼容ie/ff/op)
2014/05/16 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
js用拖动滑块来控制图片大小的方法
2015/02/27 Javascript
Jquery实现textarea根据文本内容自适应高度
2015/04/03 Javascript
纯javascript判断查询日期是否为有效日期
2015/08/24 Javascript
JavaScript中的时间处理小结
2016/02/24 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
windows系统下更新nodejs版本的方案
2017/11/24 NodeJs
5分钟教你用nodeJS手写一个mock数据服务器的方法
2019/09/10 NodeJs
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
[02:46]解说DC:感谢430陪伴我们的DOTA2国际邀请赛岁月
2016/06/29 DOTA
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
Python实现生成简单的Makefile文件代码示例
2015/03/10 Python
python实现爬虫统计学校BBS男女比例之多线程爬虫(二)
2015/12/31 Python
python中文分词教程之前向最大正向匹配算法详解
2017/11/02 Python
Python之文字转图片方法
2018/05/10 Python
python实现名片管理系统
2018/11/29 Python
Python django框架应用中实现获取访问者ip地址示例
2019/05/17 Python
解决.ui文件生成的.py文件运行不出现界面的方法
2019/06/19 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
2020/02/28 Python
详解python中GPU版本的opencv常用方法介绍
2020/07/24 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
DOUGLAS波兰:在线销售香水和化妆品
2020/07/05 全球购物
小学安全教育材料
2014/02/17 职场文书
读书月活动方案
2014/05/22 职场文书
小组口号大全
2014/06/09 职场文书
2015年教师节慰问信
2015/03/23 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
2016年教师寒假学习心得体会
2015/10/09 职场文书
《狼牙山五壮士》教学反思
2016/02/17 职场文书
导游词之吉林吉塔
2019/11/11 职场文书
七年级作文之下雨天
2019/12/23 职场文书