简单表统计,用于js的综合应用示例

简单表统计,用于js的综合应用示例
在进行问卷调查时,需要将表中的统计问题记录为JS的全面知识。

基本要求如下:
核心HTM如下:
复制代码代码如下所示:
(3)2010市疾病预防控制中心信息化建设的信息来源和分布情况
单位:一万元,小数点后1位。
政府财政

项目基金>

单位自筹资金

其他基金


直接支出

软件
钱 uff1a量
源:

硬件
钱 uff1a量
源:
操作维护
钱 uff1a量
源:
其他投入
钱 uff1a量
源:
资金分配
钱 uff1a量
源:


不难看出这样的基本要求,其基本思想是在焦点丢失的同时更新数据并更新相应的文本框,难点在于获得需要添加到这些文本框中的值。

1如果你只知道总文本框ID,你如何获得一个需要累积的文本框编号

在第一行统计分析,可以发现,文本框和文本框需要汇总统计都是在相同的TR标签,他们都有一流的数字。例如,文本框,82row1需要计算,text_4780,text_4782,text_4783

他们都是在同一个tr标签,所有的类都有数字(这样你就可以将文本框text_4784不需要计数)。

因此,基本思想是要找到需要基于这种关系,统计文本框为例,对82row1,你需要找到文本框text_4780,text_4782,text_4783。

已经测试过的基本js代码如下所示:
复制代码代码如下所示:
功能getonerowallchild(totalid)
{
VaR idlist = { };
无功tdlist = $(# + totalid)。父(母'td)。(孩子们)(TD); / /统计文本框的父节点TD TR的父母,然后把TR的子节点,得到所有的TD同一行
美元。每个(tdlist,函数(i,n){ / /周期TD
无功投入=美元(N)。儿童(输入{类型中}); / /文本框中得到TD
如果(输入,长度> 0)
{
美元。每个(输入功能(J,iteminput){ / / TD在文本框
项目= $(var iteminput);
如果(item.hasclass(数字)) / /判断是不是在一个文本框,文本应排除列
{
var id = item.attr(ID);
IdList.push(ID);
}
});
}
});
/ / var名单= idlist.join(
/ /警报(名单);
BindBlur (idList, totalId);
}
函数的BindBlur(idlist,totalid) / /结合模糊失去焦点事件
{
美元。每个(idlist,功能(J,项){
项目;
$(#+身份证(Blur)(功能)(idlist,totalid){ updatesum });
});
}
功能updatesum(idlist,totalid) / /更新统计信息
{
var总和= 0;
美元。每个(idlist,功能(J,项){
项目;
VaR值= $(+身份证# )(。Val);
如果(美元。ISNUMERIC(值))
{
总和+ = parseFloat(价值);
}
});
$(# + totalid)瓦迩(和);
}

2,每行获取文本框的思想,考虑到每一列的思路基本上与每行的思路相同,但在修改过程中仍有许多不同之处。

测试代码如下所示
复制代码代码如下所示:
功能getonecolumnallchild(totalid,指数)
{
VaR idlist = { };
无功trlist = $(# + totalid)。父('td)。母(TR)。家长(孩子们)(TR); / / / /以统计文本框的父节点的父TD TR表的父,然后把表的子节点,所有TR
美元。每个(trlist,函数(i,n){ / /遍历所有TR
无功tdlist = $(N)。儿童(TD)。
如果(tdlist。长度>0)
{
无功投入指标= 0;
美元。每个(tdlist,功能(J,项){ / /遍历所有的TD
如果由于直接支出,如果(如果索引为),那么这样的数据会导致错误,因为TD的第一行,除了第一行之外,包含一个更少的TD。
{ /
无功inputlist = $(项)。儿童(输入{类型中});
如果(inputlist。长> 0){
美元。每个(inputlist,函数(k,iteminput){ / /遍历所有的文本框
项目= $(var iteminput);
如果(item.hasclass(数字)){
投入指标+ +;
如果(投入指标= =指数){ / /退出指定列的文本框
IdList.push(item.attr(ID));
}
}
}); / /结束inputlist
} / /如果(inputlist。长度>0)
}); / /结束tdlist
} / /如果(tdlist。长度>0)
}); / /结束trlist
BindBlur(idlist,totalid);
/ / var名单= idlist.join(
/ /警报(名单);
}

总结:第一次遇到这样的问题,真的没有更好的主意,这是一个初步的解决方案,但它是非常灵活的,例如,每个单元只能有一个需要计数的文本框,多人可以出错,但如果它是最简单的,它将适应更复杂的情况。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部