将前台input中的数据异步传到后台并存入数据库

先看图:

利用ajax异步交互数据,并不是以json数组的形式将数据传到后台,而是利用字符数组的形式将其传到后台。动态新增每一行数据,将每一列对应的数据存入数组,并传到后台中进行入库。(当然可以直接以json数组的形式将每一行的数据传到后台,这里就不详细讲了)

前台js代码:

  ///保存多行数据,运用ajax异步交互请求
function btnSave() {
/*传值方式一:将添加的每一字段的值存在数组中,再将数组转换成字符串串传到后台*/
//定义五个一维数组
var code = new Array();
var name = new Array();
var pwd = new Array();
var phone = new Array();
var bmmc = new Array(); //将表单中的数据添加到各自的数组中
for (var i = 1; i <= rowL; i++) {
code.push($("#" + "UserCode" + i).val());//对应每个增加表单中的id相应的值
name.push($("#" + "UserName" + i).val());
pwd.push($("#" + "UserPwd" + i).val());
phone.push($("#" + "Phone" + i).val());
bmmc.push($("#" + "Bmmc" + i).val());
}
//利用js的join方法将数组分割成字符串,用于传值,在后台解析。分割符号为逗号,可自行定义。
var Code = code.join(',');
var Name = name.join(',');
var Pwd = pwd.join(',');
var Phone = phone.join(',');
var Bmmc = bmmc.join(','); //利用ajax进行传值,类型为POST
$.ajax({
type: "POST",
// dataType: "Text",
url: "UserList.ashx?Action=Save",
data: {
UserCode: Code,
UserName: Name,
UserPwd: Pwd,
UserPhone: Phone,
BmMc: Bmmc,
RowLength: rowL//将增加的行数传至后台控制for循环中的参数范围
},
success: function (result) {
if (result == "true") {
noty({ text: "保存成功!", type: "success", layout: "topCenter", timeout: 2000 });
Refresh(); } else {
noty({ text: "保存失败!", type: "error", layout: "topCenter", timeout: 2000 });
}
}
}); }

2、后台获取数据的代码:

   private string HandleSaveRequest(HttpContext context)
{
string result = "False";
try
{
/*定义参数数组,获取前台数据,并解析成数组形式。运用方法split()*/
string []UserName = context.Request.Form["UserName"].ToString().Split(',');
string []UserCode = context.Request.Form["UserCode"].ToString().Split(',');
string []UserPwd = context.Request.Form["UserPwd"].ToString().Split(',');
string []Phone = context.Request.Form["UserPhone"].ToString().Split(',');
string[] BmMc = context.Request.Form["BmMc"].ToString().Split(',');
int length =Int32.Parse( context.Request.Form["RowLength"].ToString());
DUserList user = new DUserList();
MUserList Muser = new MUserList();
//将数组中的数据遍历插入数据库
for (int i = ; i <length; i++)
{
Muser.NVFID = System.Guid.NewGuid().ToString();
Muser.USERCODE = UserCode[i];
Muser.USERNAME = UserName[i];
Muser.USERPWD = UserPwd[i];
Muser.BMMC = BmMc[i];
Muser.PHONEIMEI = Phone[i];
// user.Insert(Muser);
if (user.Insert(Muser))
{
result = "true";
}
else
{
result = "False";
}
} }
catch(Exception ex)
{ }
return result; }

注意:ajax不能直接将数组直接传递到后台,所以在数组传递之前用Join()方法将数组转换成字符串,在后台获取到字符串之后再用spit()方法进行分割成数组。

将前台input中的数据异步传到后台并存入数据库的更多相关文章

  1. 动态input file多文件上传到后台没反应的解决方法!!!

    其实我也不太清除具体是什么原因,但是后面就可以了!!! 我用的是springMVC 自带的文件上传 1.首先肯定是要有springMVC上传文件的相关配置! 2.前端 这是动态input file上传 ...

  2. 如何将redis中的数据导入到本地MongoDB和MySQL数据库

    将redis中的数据导入到本地MongoDB数据库 创建一个process_items_mongodb.py文件(文件名自定义): #!/usr/bin/env python # -*- coding ...

  3. vue-awesome-swiper中的数据异步加载

    <template> <div> //第一个轮播 加了v-if 判断,可以实现 loop 轮循 <swiper v-if="gglist.length>1 ...

  4. 使用python读取配置文件并从mysql数据库中获取数据进行传参(基于Httprunner)

    最近在使用httprunner进行接口测试,在传参时,用到了三种方法:(1)从csv文件中获取:(2)在config中声名然后进行引用:(3)从函数中获取.在测试过程中,往往有些参数是需要从数据库中获 ...

  5. input type="file"文件上传到后台读取

    html页面(表单采用bootStrap) js部分: //更换头像时把上传的图片post方式到控制器 <script type="text/javascript"> ...

  6. 介绍ArcGIS中各种数据的打开方法——mdb(个人数据库)

    3.打开存储在Access GeoDatabase的要素类 使用工作空间打开一个Access库中的一个要素类. private void OpenWorkspaceFromFileAccess(str ...

  7. SQL语句中如何把文件以二进制数组形式存入数据库

    System.IO.FileStream fs = new FileStream("1.txt", FileMode.Open); string strConn = "D ...

  8. Eclipse中java向数据库中添加数据,更新数据,删除数据

    前面详细写过如何连接数据库的具体操作,下面介绍向数据库中添加数据. 注意事项:如果参考下面代码,需要 改包名,数据库名,数据库账号,密码,和数据表(数据表里面的信息) package com.ning ...

  9. OneNET麒麟座应用开发之四:数据上传测试

    已经测试过OneNET麒麟座开发板了,这次来尝试与OneNET的连接和数据上传.这也是我们测试这块开发办的主要原因,因为在十几种我们有这种将分散的采集点数据上传到后台的需求. 先看看麒麟座这块开发板, ...

随机推荐

  1. Gimp教程:简约手机图标风格

    效果:       在一个国外博客上翻到的图标制作教程,效果类似于Cowon J3的默认图标风格. 制作过程很简单,只需两三步,不多说了,上步骤 Step1.新建50×50的黑色背景 Step2.新建 ...

  2. 终于有人把O2O、C2C、B2B、B2C的区别讲透了!

    终于有人把O2O.C2C.B2B.B2C的区别讲透了! 一.O2O.C2C.B2B.B2C的区别在哪里? O2O是online to offline分为四种运营模式: 1.online to offl ...

  3. 使用JSmooth制造java jar文件可以运行exe文件教程图像

    这是我之前在个人博客3yj上面写的一篇文章,如今转载过来,原文地址 (这不是广告哦) 几年前,刚接触java的是.就想用一些方法把自己的劳动果实保护起来,曾经也用过非常多这种工具.有一个特别好用,今天 ...

  4. PHP中使用Ajax

    在PHP中使用Ajax来获取数据库中的数据,从而达到不刷新页面就可以获取. 首先在JS中定义变量如: var xmlHttp;function getXmlHttp(){ if(window.Acti ...

  5. C语言练习-学生信息管理系统

    题目要求: 学生信息管理系统struct studentInfo{ int id; char name[128]; int age; char sex; int c_score; int cpp_sc ...

  6. [Usaco2008 Mar]River Crossing渡河问题[简单DP]

    Description Farmer John以及他的N(1 <= N <= 2,500)头奶牛打算过一条河,但他们所有的渡河工具,仅仅是一个木筏. 由于奶牛不会划船,在整个渡河过程中,F ...

  7. Asp.Net MVC 3

    Asp.Net MVC 3   wcf基础教程之 契约(合同)Contract 摘要: 在前几篇博客中我有说到服务的寄宿,就是服务要运行起来必须采取的几种方式,相当于我们可以照葫芦画瓜的效果运行一个w ...

  8. [转]Avoiding GDB Signal Noise.

    原文:http://peeterjoot.wordpress.com/2010/07/07/avoiding-gdb-signal-noise/ A quick note for future ref ...

  9. iOS AVCaptureDevice的一些动西

    http://blog.sina.com.cn/s/blog_78a55c9f01011apc.html

  10. 总结C++中取成员函数地址的几种方法

    这里, 我整理了4种C++中取成员函数地址的方法, 第1,2,4种整理于网上的方法, 第3种cdecl_cast是我自己想到的. 其中, 第4种(汇编)的方法不能在VC6上编译通过. 推荐使用第1,2 ...