$.ajax({

url: baseURL + "InvoiceSale/OnQuotaInvoiceSale", //点击核销单号时,点击核销时,交互的页面

              type: "POST",
                 data: JSON.stringify(createTable.resultData()),     //JSON
传递整个表格数据,得到字符串数组
               dataType: "json",
              success: function (result) {
                                  Success(result)
                      },
              error: function () {
                     alert("error");
                  }
                });

//在初始加载时,遍历填充表格

loadData: function (data) {
var $table = $("#tableAgainDetail"),
$trFirst = $("#trDetailFirst");
$table.find("tr").each(function (i) {
if (i > 2) {
$(this).remove();
}
});
if (!!data) {
$.each(data, function (i, info) {
$tr = $trFirst.clone().attr("id", "").show();
$tr.children("td").eq(0).text("00");
//$tr.val(info.LaneID);
//$tr.children("td").eq(1).text(info.SquadNo);
$table.append($tr);
});
}
$("input[name=spaninvoiceCode]:visible").live("blur", function () {
var flags = false, $this = $(this);
if ($(this).val().length != 12) {
$(this).css("background", "#FDB7BF");
$(".tooltip_main").text("发票代码应为12位");
$("#tips").show().css("left", $this.parent()[0].offsetLeft).css("top", $this.parent()[0].offsetTop + 121);
flags = true;

}
if (flags) {
return false;
}
$(this).css("background", "#FFFFFF");
$("#tips").hide();
});

$("input[name='spanstartNo']:visible,input[name='spanendNoT']:visible").live("blur", function () {
var flags = false, $this = $(this);
if ($(this).val().length < 6 || $(this).val().length > 8) {
$(this).css("background", "#FDB7BF");
$(".tooltip_main").text("起\止号长度应为6-8位");
$("#tips").show().css("left", $this.parent()[0].offsetLeft).css("top", $this.parent()[0].offsetTop + 121);
flags = true;
}
if (flags) {
return false;
}
$(this).css("background", "#FFFFFF");
$("#tips").hide();
});

$("input[name='spanstartNo'],input[name='spanendNoT'],.can,.cuo").live('keyup', function () {
if (createTable.isNum($(this))) {
createTable.calTrCount($(this).parent().parent());
} else {
$("#spanMsg").text("请输入数字");
}
$("#spanMsg").text("");

});
},

//循环数据,得到JSON数组,拼成Jason数组,传个后台
resultData: function () {
var $tr = $("#tableAgainDetail").find("tr:visible"),
result = [],
trData = {},
//OprID = [], DefinedOn = [], laneID = [],
spaninvoiceCode = [], spanstartNo = [], spanendNoT = [],
amount = [], can = [], cuo = [], actual = [];
/*获取数据后,循环向表格中添加数据*/
$.each($tr, function (i, info) {
var $this = $(this), $tds = $this.children("td");
if ($tds.length == 0) {
return true;
}
/*如果TD的长度==8,获取传来的收费员编号,以及日期时间*/
if ($tds.length == 8) {
trData = {},laneID=[], spaninvoiceCode = [], spanstartNo = [], spanendNoT = [],
amount = [], can = [], cuo = [], actual = [];
trData.oprID = $("#txtOprID").val(); //收费员编号
trData.definedOn = $("#txtDefinedOn").val(); //日期时间 
trData.laneID = "0";
}
//money.push($this.find("select[name='money']").val()); //选择票面金额
spaninvoiceCode.push($this.find("input[name='spaninvoiceCode']").val()); //发票代码
spanstartNo.push($this.find("input[name='spanstartNo']").val()); //起号
spanendNoT.push($this.find("input[name='spanendNoT']").val()); //止号
amount.push($this.find(".amount").text()); //张数
can.push($this.find("input[class='can']").val()); //残票
cuo.push($this.find("input[class='cuo']").val()); //错票
actual.push($this.find(".actual").text()); //实际发出
//trData.money = money.join();

trData.spaninvoiceCode = spaninvoiceCode.join();
trData.spanstartNo = spanstartNo.join();
trData.spanendNoT = spanendNoT.join();
trData.amount = amount.join();
trData.can = can.join();
trData.cuo = cuo.join();
trData.actual = actual.join();
result.push(trData);

});
return result;
},

jQuery Ajax遍历表格,填充数据,将表格中的数据一条一条拼成Jason数组的更多相关文章

  1. Jquery.ajax 详细解释 通过Http请求加载远程数据

    首先请看一个Jquery.ajax的例子 $.ajax({ type: "GET", url: "/api/SearchApi/GetResults", dat ...

  2. ASP.NET MVC中如何以ajax的方式在View和Action中传递数据

    前言:写这篇随笔的时候,在url上漏写了斜线,找了好久错误,整个人都很不好.#我是猪系列 背景:之前介绍过一篇如何构建 MVC&AJax&JSon示例,这一篇单独讲解如何在View和A ...

  3. Struts2(三)——数据在框架中的数据流转问题

    一款软件,无在乎对数据的处理.而B/S软件,一般都是用户通过浏览器客户端输入数据,传递到服务器,服务器进行相关处理,然后返回到指定的页面,进行相关显示,完成相关功能.这篇博客重点简述一下Struts2 ...

  4. windows下使用ofstream默认输出内存数据到文件中时,会自动将0A换成0A0D

    0A即\n,而0D是\r,windows下换行是\n\r,因此会自动转换. 但是,这样会带来很大的问题,导致由内存写入文件中的数据和内存中不一样,还不知道是什么原因造成的. 特别是将从网络接收来的pn ...

  5. 使用 jQuery Ajax 在页面滚动时从服务器加载数据

    简介 文本将演示怎么在滚动滚动条时从服务器端下载数据.用AJAX技术从服务器端加载数据有助于改善任何web应用的性能表现,因为在打开页面时,只有一屏的数据从服务器端加载了,需要更多的数据时,可以随着用 ...

  6. map在遍历数据的过程中删除数据不出错

    // Iterator<Map.Entry<String,Long>> entries = Map.entrySet().iterator();                 ...

  7. 通过遍历类向Aspose.cell模板中插入数据

    /// <summary> /// 遍历类所有字段 /// </summary> /// <param name="designer">aspo ...

  8. .Net core Api后台获取数据,异步方法中,数据需采用Linq分页

    .net core api using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressi ...

  9. Ajax--PHP+JQuery+Ajax解析json、XML数据、加载页面

    一.JQuery+Ajax用get.post方式提交和请求数据 知识要点: $('#userName').blur(function () { var txt = $(this).val(); $.a ...

随机推荐

  1. Delphi中的变量作用域简介

    1.在函数或过程中声明的变量是局部变量,只能在函数或过程中使用 2.在单元的implementation部分声明的变量是单元级的(又称模块级.窗体级)变量,该单元的所有函数与过程都能使用,其他引用该单 ...

  2. foreach与Iterable学习

    以前对于foreach的使用都是自然而然的感觉,没有深究过为什么可以用,什么时候可以用.最近才发现,原来那些可以使用的类,都是实现了Iterable接口的,否则根本就不能用. 下面是我之前学习时候写的 ...

  3. 2016"百度之星" - 初赛(Astar Round2A)Gym Class(拓扑排序)

    Gym Class  Accepts: 849  Submissions: 4247  Time Limit: 6000/1000 MS (Java/Others)  Memory Limit: 65 ...

  4. js 动态时钟

    js 动态时钟 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  5. hdu 4751 2013南京赛区网络赛 二分图判断 **

    和以前做过的一个二分图颇为相似,以前的是互相不认识的放在一组,这个是互相认识的,本质上是相同的 是 hdu 2444 #include<cstdio> #include<iostre ...

  6. 11g新特性-概述 (转)

    一.新特性提纲 1.数据库管理部分 ◆数据库重演(Database Replay) 这一特性可以捕捉整个数据的负载,并且传递到一个从备份或者standby数据库中创建的测试数据库上,然后重演负责以测试 ...

  7. C++模板【转】

    1. 模板的概念. 我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同.正确的调用重载函数.例如,为求两个数的最大值,我们定义MAX()函数 ...

  8. visibility和display的异同

    都有隐藏节点的作用. visibility:hidden; display:none; (1)visibility 规定了元素是否可见,即使不可见也会占用上面的空间,在这里就是在指它与display的 ...

  9. 移动端_line-height问题

    如果把line-height加1px,iPhone文字就会下移,由于我们app的ios用户居多,并且android机型太多,不同机型也会显示不同,所以只能退而求其次了. line-height的兼容问 ...

  10. LoadRunner 脚本学习 -- 读取文件内容

    随便创建个txt文档  输入点内容,例如 读取文件内前N个字符: Action() { long myfile; ; ]; char *filename = "E:\\kkk.txt&quo ...