$.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. 18.中介者模式(Mediator Pattern)

    using System; namespace Test { class Program { /// <summary> /// 中介者模式,定义了一个中介对象来封装一系列对象之间的交互关 ...

  2. C++ 内联函数笔记

    要使用内联函数,必须采取下述措施之一: +在函数声明前加上关键字inline: +在函数定义前加上关键字inline. 通常的做法是省略原型,将整个定义(即函数头和所有函数代码)放在本应提供原型的地方 ...

  3. Uncaught ReferenceError: console is not defined

    今天写javascript代码遇到了这个极其神奇的问题,居然报错说内置的console不存在,而且后来我换成了alert也不行.照例说这些都是js代码内置的东西不应该出现这种错误.不过百度之发现貌似没 ...

  4. 安装wine的问题

  5. cocos2d-x CCScrollView和CCTableView的使用(转载)

    转载请注明来自:Alex Zhou的程序世界,本文链接:http://codingnow.cn/cocos2d-x/1024.html //============================== ...

  6. JavaScript中new和this

    [TOC] new var obj = new Base(); 相当于: var obj = {}; //创建空对象obj obj.__proto__ = Base.prototype; //将空对象 ...

  7. android:imeOptions属性(转)

    默认情况下软键盘右下角的按钮为“下一个”,点击会到下一个输入框,保持软键盘 设置 android:imeOptions="actionDone" ,软键盘下方变成“完成”,点击后光 ...

  8. HDU 1561 The more, The Better 树形DP

    The more, The Better Problem Description   ACboy很喜欢玩一种战略游戏,在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中ACboy允许攻克M ...

  9. android 获取文件夹、文件的大小 以B、KB、MB、GB 为单位

    android 获取文件夹.文件的大小 以B.KB.MB.GB 为单位   public class FileSizeUtil { public static final int SIZETYPE_B ...

  10. Coursera课程下载和存档计划[转载]

    上周三收到Coursera平台的群发邮件,大意是Coursera将在6月30号彻底关闭旧的课程平台,全面升级到新的课程平台上,一些旧的课程资源(课程视频.课程资料)将不再保存,如果你之前学习过相关的课 ...