记得以前刚写asp.net 从前台往后台传值 都是var data=A,B,C,D,E; 循环添加用逗号隔开 后台还要被测试测出只输入,就错了 哈哈。。后来用✈◆类似的符号隔开 不是长久之计。。。

现在用了MVC,表单添加,在每个input上写上相对应Model的Name,传到后台直接model点属性就行了。

但是还是会碰到提交不是表单,类似提交考试答案,课后评估,一大串字符串。看到JS对象眼前一亮!!!上代码

 Html:

<ul>

<li class='id'>1</li>

<li class='name'>A</li>

</ul>

<ul>

<li class='id'>2</li>

<li class='name'>B</li>

</ul>

--------------------------------------------------------------------------------

如果换成以前我肯定会写成1,A.2,B传到后台。。。现在不一样了

var OrgArray={};//首先声明一个全局数组

 $(ul).each(function(){

    var Organ={

      id=$(this).children(li:eq(0)).html(),

      name=$(this).children(li:eq(1)).html()

        }

    OrgArray.push(Organ); //等于list集合

  })

$.post("url",{OrgArray: JSON.stringify(OrgArray)//转换成字符串}, function(data){})

//如果传的字符串层级很多的话 还可以多套几个var arry={};

----------------------------------------------------------------------------------------------

后台

var OrgArray = Request.Form["OrgArray"];
 dynamic OrgList = Newtonsoft.Json.JsonConvert.DeserializeObject(OrgArray);

for (int i = 0; i < OrgList.Count; i++)

{

  id=OrgList[i].id;

  name=OrgList[i].name;

  //添加

}

-------------------------------------------------------------------------------------------

用这样的写法和以前逗号拼接比较的话,个人觉得

1:利于以后维护!直接知道属性的意思,省的在去前台一个个查,简洁,方便。

2:避免用特殊符号隔开,发生一些错误。。

3:符合C#面向对象

利用JS对象把值传到后台的更多相关文章

  1. 点滴笔记(二):利用JS对象把值传到后台

    记得以前刚写asp.net 从前台往后台传值 都是var data=A,B,C,D,E; 循环添加用逗号隔开 后台还要被测试测出只输入,就错了 哈哈..后来用✈◆类似的符号隔开 不是长久之计... 现 ...

  2. 前台的js对象数组传到后台处理。在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>

    前台的js对象数组传到后台处理.在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>

  3. 利用js对象将iframe数据缓存, 实现子页面跳转后, 返回时不丢失之前填写的数据

    利用js对象将iframe数据缓存, 实现子页面跳转后, 返回时不丢失之前填写的数据 实现描述:将数据存放在js对象中, 然后放在父页面的document对象中, 在页面刷新的时候将父页面的值取出来, ...

  4. 利用js对象的特性,去掉数组中的重复项

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  5. 利用js对象的特性,去掉数组中的重复项

  6. jquery ajax 传递js对象到后台

    第一种:通过struts接收 (function ($) { $("#btnsave").click(function () { var params = {}; params[& ...

  7. 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能

    原文:利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能1.在界面上添加几个checkbox和一 ...

  8. js对象传到后台ACTION使用

    需的包 <script type="text/javascript" src="s"></script>gson-1.2.3.jar谷歌 ...

  9. 如何利用fastjson将JSON格式的字符串转换为Map,再返回至前端成为js对象

    //注意,这里的jsonStr是json格式的字符串,里面如果遇到双引号嵌套双引号的,一般是嵌套的双引号经过转义 //    \",假如有这样的一个场景,这些字符串里面有需要的css样式的j ...

随机推荐

  1. [转帖]MySQL的又一神器-锁,MySQL面试必备

    MySQL的又一神器-锁,MySQL面试必备 https://segmentfault.com/a/1190000020762791 lock 低一级的是 latch   原文链接:blog.ouya ...

  2. HDOJ-1100 Trees made to order

    一.题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1100 二.题目分析 对二叉树的所有形态顺序编号,编号规则是:节点数越多的编号越大:节点数相等,左子 ...

  3. C之多维指针讲解

    转载自:  http://c.biancheng.net/view/2016.html #include <stdio.h> #include <string.h> int m ...

  4. PAT甲级题分类汇编——序言

    今天开个坑,分类整理PAT甲级题目(https://pintia.cn/problem-sets/994805342720868352/problems/type/7)中1051~1100部分.语言是 ...

  5. go http简单的表单处理

    //表单处理 package main import (     "net/http"     "io"     "fmt"     &qu ...

  6. Hystrix 用法及注解用法

    一.hystrix参数使用方法 通过注解@HystrixCommand的commandProperties去配置,如下就是hystrix命令超时时间命令执行超时时间,为1000ms和执行是不启用超时 ...

  7. iview的table组件中加入超链接组件,可编辑组件,选择组件,日期组件

    这篇文章主要介绍了iview的table组件中使用选择框,日期,可编辑表格,超链接等组件. 1.select选择组件 // tableColumn数组响应对象需要传入一个固定的option数组,如果该 ...

  8. Java Web-Redis学习

    Java Web-Redis学习 基本概念 Redis是一款高性能的NOSQL系列的.非关系型数据库 NOSQL:not only SQL,是一系列非关系型数据库的总称,例如radis.hbase等数 ...

  9. Java Web-JQuery学习

    Java Web-JQuery学习 JQuery概念 是一个JS框架,可以用来简化JS的开发,设计宗旨是"write less,do more",即写更少的代码,做更多的事情.它封 ...

  10. MySQL存储引擎的介绍

    数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建.查询.更新和删除数据操作.不同的存储引擎提供不同的存储机制.索引技巧.锁定水平等功能,使用不同的存储引擎还可以获得特定的功能. ...