------前台JS

"<input class=\'jTabCheck2\' type=\'checkbox\' partvguid=" + obj + " projectvguid=" + projectVGUID + " reportvguid=" + reportVGUID + ">"    //给CheckBox 添加三个自定义属性值

var partvguid = $("#input[type='checkbox']”).attr("partvguid");
var projectvguid = $("#input[type='checkbox']”).attr("projectvguid");
var reportvguid = $("#input[type='checkbox']”).attr("reportvguid");

//创建对象

var array = new Array();

var model = new Object();
model.partvguid = partvguid;
model.projectvguid = projectvguid;
model.reportvguid = reportvguid;
array.push(model);
}

var list = JSON.stringify(array);

$.ajax({
type: "post",
data: { "list": list },
url: "/Completed_Report/SubmitData",
success: function (msg) {
debugger;
if (msg.isSuccess == true || msg.isSuccess == "True" || msg.isSuccess == "true") {
$.jBox.tip(msg.respnseInfo);
$$$.bindDataList();
} else {
$.jBox.tip(msg.respnseInfo);
}
}, error: function (msg) {
console.log(msg);
}
})

----------C#后端获取

//控制器

[HttpPost]
public JsonResult SubmitData(string list)
{
ActionResultModel<string> result = new ActionResultModel<string>();
List<ReportInfo> dataList;
dataList = JSONToData.JsonToModel<List<ReportInfo>>(list);
string partList = "";
for (int i = 0; i < dataList.Count();i++ )
{
partList += dataList[i].partvguid.ToString();
}

List<Guid> vguidLists = SmartLabExtends.ToGuidList(partList);
bool flag = reportService.ValidateData(vguidLists);
if (flag)
{
string msg = reportService.SubmitData(dataList);
if (msg== "1")
{
result.isSuccess = true;
result.respnseInfo = "Submit Success";
}
else
{
result.isSuccess = false;
result.respnseInfo = "Submit Failed";
}
}
else
{
result.isSuccess = false;
result.respnseInfo = "The record status can not submit";
}
return Json(result);
}

//拓展类

public static class JSONToData
{

public static TEntity JsonToModel<TEntity>(this string json)
{
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
jsSerializer.MaxJsonLength = Int32.MaxValue;
return jsSerializer.Deserialize<TEntity>(json);
}
}

//实体类

public class ReportInfo
{
public string partvguid { get; set; }
public string projectvguid { get; set; }
public string reportvguid { get; set; }
}

js Checkbox 传递多个值给后台的更多相关文章

  1. js checkbox获取选中的值

    //将选择标签 var addCode = function () { var codes = []; var elements = document.getElementsByName(" ...

  2. MVC 从后台页面 取前台页面传递过来的值的几种取法

      MVC 从后台页面 取前台页面传递过来的值的几种取法   <1>前台页面 Index视图 注意:用户名表单的name值为txtName 密码表单的name值为txtPassword & ...

  3. js 参数的 引用与值传递

    js中arr的赋值不影响原数组,赋值和引用的区别 1.赋值 var a = 1; var b = a;   //赋的是a的复制值 b ++; alert(a);   //"1"   ...

  4. JS 如何获取radio或者checkbox选中后的值

    废话不多说,直接上代码: 代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...

  5. vue.js 同级组件之间的值传递方法(uni-app通用)

    vue.js 兄弟组件之间的值传递方法 https://blog.csdn.net/jingtian678/article/details/81634149

  6. js 数组赋值问题 :值传递还是引用?

    转载于知乎var a = [1,2,3]; var b = a; a = [4,5,6]; alert(b); //[1,2,3] 面试时被问到这样一个问题,竟然从来没试过... 当时直接的理解,数组 ...

  7. Js前端传递json数组至服务器端并解析的实现。

    最近做的一个小项目中需要将json数组数据传递到服务器端进行保存,现分享一下解决思路. 环境:EasyUi+Mvc 4.0 如下: 在上述截图中的红色圈起来的部分,需要在点击保存后通过一次ajax请求 ...

  8. ajax向后台传递数组参数并将后台响应的数据赋值给一个变量供其它插件使用

    1.在js中封装ajax向后台传递数组参数函数 //combogrid * * @Description 封装ajax向后台传递数组参数并将后台响应的数据赋值给一个变量方便其他插件使用该数据函数 * ...

  9. Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合

    今天为大家分享下 Asp.net MVC 将数据从前台传递到后台的几种方式. 环境:VS2013,MVC5.0框架 1.基本数据类型 我们常见有传递 int, string, bool, double ...

随机推荐

  1. VS2013中Python学习环境搭建

    VS2013中Python学习笔记[环境搭建] 前言 Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python的设计具有很强的可读性,相比其他语言经常使用英文关键字, ...

  2. Scala很难!

    Scala很难! 本文是从 Yes, Virginia, Scala is hard 这篇文章翻译而来. 首先要说的是,我是一个Scala粉丝,我作为一个Scala语言的倡导者差不多有5年历史了.我写 ...

  3. Android中怎么去除标题栏详解

    怎么出去标题栏,我再另一个博客中亦有实例在这里再详细的解释一下,也让自己能更加巩固最简单也是小重要的东西. 这里有两种方法是比较好的... 第一种: 首先,在values中建一个theme.xml 代 ...

  4. Linux 下 Vi 配置文件 .vimrc 文件

    Linux 下 Vi 配置文件 .vimrc 文件 配置 vim 的方法是在用户主目录下建立个.vimrc文件,我一般使用root帐户,所以就在/root/下建立一个.vimrc文件:vi /root ...

  5. CSS控制文本超出后隐藏并用省略号代替

    一.仅定义text-overflow:ellipsis; 不能实现省略号效果. 二.定义text-overflow:ellipsis; white-space:nowrap; 同样不能实现省略号效果. ...

  6. Javascript多线程引擎(八)

    Javascript多线程引擎(八)    Javascript 多线程项目, 做到现在已经快3个月了(加上前期准备编译原理和必要的文档), 该项目(js-engine)已经快进入尾声了, 现在该引擎 ...

  7. Effective C++(16) 成对使用new和delete时要采取相同的形式

      问题聚焦:     我们都知道,new和delete要成对使用,但是有时候,事情往往不是按我们预期的那样发展.     对于单一对象和对象数组,我们要分开考虑     遇到typedef时,也需要 ...

  8. Parameter Binding in ASP.NET Web API(参数绑定)

    Parameter Binding in ASP.NET Web API(参数绑定) 导航 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnbl ...

  9. Leetcode::Longest Common Prefix && Search for a Range

    一次总结两道题,两道题目都比较基础 Description:Write a function to find the longest common prefix string amongst an a ...

  10. javascript语言精粹mindmap

    javascript语言精粹mindmap 最近刚刚读完<javascript语言精粹>,感觉其中的内容确实给用js作开发语言的童鞋们提了个醒——js里面坑很多啊 不过,我也并不完全认同书 ...