jQuery Ajax遍历表格,填充数据,将表格中的数据一条一条拼成Jason数组

$.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;
},

时间: 2024-08-06 20:06:06

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

jquery ajax 在submit按钮的click处理中应注意的地方

html文件: <form action="/index.php/welcome/personpost"> ................ <input type="submit" id="personsub"  value="提交" /> </form> js文件: $(document).ready(function() { $("#personsub").live

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

首先请看一个Jquery.ajax的例子 $.ajax({ type: "GET", url: "/api/SearchApi/GetResults", dataType: "json", data:{ filter: "test", pageNumber: 1, pageSize: 5 }, success: function(data){ // do something }, complete: function(XMLH

Jquery ajax 表单验证处理返回的xml格式数据

jsp页面表单: <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <% String path = request.getContextPath(); Strin

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

前言:写这篇随笔的时候,在url上漏写了斜线,找了好久错误,整个人都很不好.#我是猪系列 背景:之前介绍过一篇如何构建ASP.NET MVC4&JQuery&AJax&JSon示例,这一篇单独讲解如何在View和Action间传递并处理数据. 1,前台HTML代码: 1 <div> 2 <button type="button" id="btn">从视图向控制器中传递数据</button> 3 <p

jquery ajax实现省市二级联动

今天给大家带来使用jQuery ajax实现的省市联动效果.我们直奔主题,先说下实现思路: 准备数据 这里数据库我使用的是mysql,先看下表格: provience表 city表 这里使用provience表的主键作为city表的外键,等下根据省份的id查找对应的市区 查询方法的封装 接下来就是实现查询所有省市以及根据省份id查找对应的城市的方法,这里我写了一个BaseDao封装了一些基本的数据库链接以及关闭连接的方法: BaseDao.java package com.jqueryajax.

jQuery.ajax相关

jQuery.ajax(url,[settings]) 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XMLHttpRequest 对象.大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性. 最简单的情况下,$.ajax()可以不带任何参数直接使用. 注意,所有的选项都可以通过$.ajaxSetup()函数来全局设置. 回调函数 如果要处理$.ajax()

jquery ajax跨域的完美解决方法(jsonp方式)

ajax跨域请求的问题,JQuery对于Ajax的跨域请求有两类解决方案,不过都是只支持get方式,接下来为大家详细介绍下客户端JQuery.ajax的调用代码 今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发 JQuery对于Ajax的跨域请求有两类解决方案,不过都是只支持get方式.分别是JQuery的 jquery.ajax jsonp格式和jquer

Java程序员之JS(一) 之 JQuery.ajax

背景:紧着现在项目的需要,先从JQuery.ajax出发,主要需求是通过 js 调用Java 代码,从而适应现在的项目. 先从几个概念开始讲解: 一. 什么是Deferred  Deferred 对象是由.Deferred构造的, .Deferred被实现为简单工厂模式.它是用来解决JS中的异步编程,遵循 Common Promise/A规范,实现此规范的还有when.js 和 dojo. Deferred 对象在 JQuery 1.5被引入,用来解决 Ajax 异步优化问题,正是由于 Defe

我们无法找到服务器加载工作簿的数据模型&quot;的 SharePoint 网站,当您刷新 Excel 2013 工作簿中的数据透视表时出错

假定您使用 Analysis Services 源在 Microsoft Excel 2013 中创建数据透视表.将 Excel 工作簿上载到 Microsoft SharePoint 网站中.当您尝试刷新数据透视表或数据透视表中筛选数据时,您会收到以下错误消息: 我们无法找到服务器加载工作簿的数据模型. 由于没有在管理中心网站配置 Analysis Services 实例,将出现此问题. 若要变通解决此问题,请配置 SharePoint 服务器上的 Excel Services 服务应用程序.