﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-vanhelp-songst</title><link>http://www.blogjava.net/vanhelp-songst/</link><description /><language>zh-cn</language><lastBuildDate>Sun, 03 May 2026 10:12:04 GMT</lastBuildDate><pubDate>Sun, 03 May 2026 10:12:04 GMT</pubDate><ttl>60</ttl><item><title>ExtJS页面中增加"合计"行</title><link>http://www.blogjava.net/vanhelp-songst/archive/2010/08/21/329517.html</link><dc:creator>阿里巴巴</dc:creator><author>阿里巴巴</author><pubDate>Sat, 21 Aug 2010 00:27:00 GMT</pubDate><guid>http://www.blogjava.net/vanhelp-songst/archive/2010/08/21/329517.html</guid><wfw:comment>http://www.blogjava.net/vanhelp-songst/comments/329517.html</wfw:comment><comments>http://www.blogjava.net/vanhelp-songst/archive/2010/08/21/329517.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/vanhelp-songst/comments/commentRss/329517.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/vanhelp-songst/services/trackbacks/329517.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;遇到给ExtJS页面加一个合计行的问题，在后台代码里添加太麻烦了，这里给大家一个简单的方法。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;//合计函数Begin&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;function GridSum(grid)<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;var sum1 = 0; //存储第一个列的合计值<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var sum2 = 0; //存储第二个列的合计值<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//...有几个列需要合计就声明几个变量&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; grid.store.each(function(record){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;//函数grid.store.each(record))相当于一个for循环，遍历整个record<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sum1 += Number(record.data.money1); //把money1列下面的所有值进行加和运算<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sum2 += Number(record.data.money2); //把money2列下面的所有值进行加和运算<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; });&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var p = new Ext.data.Record(<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp; &nbsp;&nbsp; <br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; money1:sum1,&nbsp; //把money1列与合计后得到的值对应起来<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; money2:sum2&nbsp; &nbsp;//把money2列与合计后得到的值对应起来&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; grid.store.insert(0, p);// 插入到当前页的第一行&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;//grid.store.insert(grid.getStore().getCount(), p);&nbsp; //插入到当前页的最后一行，函数 grid.getStore().getCount()用来获得当前页的记录行数
<p>&nbsp;&nbsp;}<br />
&nbsp;&nbsp; //合计函数End</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 在Store的load事件被触发后，调用合计函数<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gridui.getStore().on('load', function() {</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;GridSum(gridui.getGrid());//调用合计函数,gridui是你页面中定义的gridui变量名,这里作为参数传递给GridSum()函数</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; });<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 注: 1.money1,money2是你页面中"钱一"列和"钱二"列各自对应的"dataIndex"属性值。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.Store的load事件在"刚进入页面"时，"点击下一页"时，"点击查询"时，都会被触发。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.该方法是对当前页的值进行合计，并不统计所有页的总合计值，点击下一页后会自动统计下页的合计值并显示。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 感谢同事张继业的帮助。</p>
<img src ="http://www.blogjava.net/vanhelp-songst/aggbug/329517.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/vanhelp-songst/" target="_blank">阿里巴巴</a> 2010-08-21 08:27 <a href="http://www.blogjava.net/vanhelp-songst/archive/2010/08/21/329517.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>