如何计算一个动态Table里的每一列的值? 请教,用JS也行,或是我用的repeater 在后台写行。最后一行循环出每一列的总和。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 前台 <asp:Repeater ID="Repeater1" runat="server"><ItemTemplate> <%#Sum(Eval("那一列").ToString()) %> </ItemTemplate></asp:Repeater>后台 static int i=0; public string Sum(string j) { i += Convert.ToInt32(j); return j; //最后 i 就是你想要的 结果~~~ }你不就是想算出那列的和吗???这是最简单的方法~~~~~~不用循环~~~ 就算你想点击一个按钮计算Repeater1 里面的值~~~ 那么直接把I调出来就行了这是速度最快的方法了~~~~没有比这个速度在快的了。 <asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <table> </HeaderTemplate> <ItemTemplate> <tr> <td> <%# Eval("a1") %> </td> <td> <%# Eval("a2") %> </td> </tr> </ItemTemplate> <FooterTemplate> <tr> <td> a1列的总和 </td> <td> a2列的总和 </td> </tr> </table> </FooterTemplate> </asp:Repeater>能用你这方法吗? 怎么不行啊????<asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <table> </HeaderTemplate> <ItemTemplate> <tr> <td> <%# Eval("a1") %> </td> <td> <%# Eval("a2") %> </td> </tr> </ItemTemplate> <FooterTemplate> <tr> <td> <%=OK()%> </td> <td> <%=OK()%> </td> </tr> </table> </FooterTemplate> </asp:Repeater> public string OK() { return i; }不就是这样吗??? /// <summary> /// 根据条件查询保健食品现金发放信息 /// </summary> /// <param name="bonus"></param> /// <returns></returns> public static DataTable GetHrBonusInfo(GroupHrBonus bonus) { DataTable dt = myOperate.GetHrBonusInfo(bonus); DataRow dr = dt.NewRow(); dr["person_name"] = "总计"; dr["Attendance_Days"] = dt.Compute("sum(Attendance_Days)", ""); dr["Change_Rest_Days"] = dt.Compute("sum(Change_Rest_Days)", ""); dr["Absence_Days"] = dt.Compute("sum(Absence_Days)", ""); dr["Business_Travel_Days"] = dt.Compute("sum(Business_Travel_Days)", ""); dr["Meeting_Study_Days"] = dt.Compute("sum(Meeting_Study_Days)", ""); dr["Social_Work_Days"] = dt.Compute("sum(Social_Work_Days)", ""); dr["HC_Days"] = dt.Compute("sum(HC_Days)", ""); dr["HC_Stand_Yuan"] = dt.Compute("sum(HC_Stand_Yuan)", ""); dr["Actual_Pay"] = dt.Compute("sum(Actual_Pay)", ""); dt.Rows.Add(dr); return dt; }直接加在你的方法里面。返回Table 你这方法得出一个值到是可行。可写第二行的时候,得出的是第一行和第二行相加。double sum = i;i = 0.0;return sum; <asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <table> </HeaderTemplate> <ItemTemplate> <tr> <td> <%# Sum(Eval("a1").ToString(),1) %> </td> <td> <%# Sum(Eval("a2").ToString(),2)%> </td> </tr> </ItemTemplate> <FooterTemplate> <tr> <td> <%=OK(1)%> </td> <td> <%=OK(2)%> </td> </tr> </table> </FooterTemplate> </asp:Repeater> static int i_1=0; static int i_2=0; public string Sum(string j,string k) { if(k=="1") { i_1 += Convert.ToInt32(j); return j; } else if(k=="1") { i_2 += Convert.ToInt32(j); return j; } } //值 public string OK(string k) { if(k=="1") { return i_1; }else if(k=="2"){return i_2;} }手写的。。有点乱你凑活看把。。 我真汗??这是最简单的方法了消耗的速度基本为0要不你就用SQL语句!!!!select id,a,sum(a) as c from A没什么可想的。。 如果你数据量非常庞大。就用我的方法。。不要遍历repeater 。不但消耗内存。还浪费速度~~~ 随便你了如果是我。。我就会直接用SQL 查询的时候算出来~~~~~没有必要在用程序实现了select id,a,sum(a) as A_sum from A 请教个更新数据的问题 asp.net ajax项目应用 救命!!!!!!解决马上结贴!...................................... 显示数据表的特别奇怪的一个问题!!(在线等待) 求收藏本站的C#代码 DataGrid上的'删除' 提示错误,代码. 谢谢了 frame高手请进,急! 为什么textbox中没有填内容而作存盘时,程序会出错? 高分求IIS日志文件的源代码 web页面pdf自动打印 一个简单的css中div的问题
<%#Sum(Eval("那一列").ToString()) %>
</ItemTemplate></asp:Repeater>后台 static int i=0;
public string Sum(string j)
{
i += Convert.ToInt32(j);
return j;
//最后 i 就是你想要的 结果~~~
}你不就是想算出那列的和吗???这是最简单的方法~~~~~~不用循环~~~
这是速度最快的方法了~~~~没有比这个速度在快的了。
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# Eval("a1") %>
</td>
<td>
<%# Eval("a2") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
<tr>
<td>
a1列的总和
</td>
<td>
a2列的总和
</td>
</tr>
</table>
</FooterTemplate>
</asp:Repeater>
能用你这方法吗?
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# Eval("a1") %>
</td>
<td>
<%# Eval("a2") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
<tr>
<td>
<%=OK()%> </td>
<td>
<%=OK()%>
</td>
</tr>
</table>
</FooterTemplate>
</asp:Repeater> public string OK()
{
return i; }
不就是这样吗???
/// <summary>
/// 根据条件查询保健食品现金发放信息
/// </summary>
/// <param name="bonus"></param>
/// <returns></returns>
public static DataTable GetHrBonusInfo(GroupHrBonus bonus)
{
DataTable dt = myOperate.GetHrBonusInfo(bonus);
DataRow dr = dt.NewRow();
dr["person_name"] = "总计";
dr["Attendance_Days"] = dt.Compute("sum(Attendance_Days)", "");
dr["Change_Rest_Days"] = dt.Compute("sum(Change_Rest_Days)", "");
dr["Absence_Days"] = dt.Compute("sum(Absence_Days)", "");
dr["Business_Travel_Days"] = dt.Compute("sum(Business_Travel_Days)", "");
dr["Meeting_Study_Days"] = dt.Compute("sum(Meeting_Study_Days)", "");
dr["Social_Work_Days"] = dt.Compute("sum(Social_Work_Days)", "");
dr["HC_Days"] = dt.Compute("sum(HC_Days)", "");
dr["HC_Stand_Yuan"] = dt.Compute("sum(HC_Stand_Yuan)", "");
dr["Actual_Pay"] = dt.Compute("sum(Actual_Pay)", "");
dt.Rows.Add(dr); return dt;
}
直接加在你的方法里面。返回Table
你这方法得出一个值到是可行。可写第二行的时候,得出的是第一行和第二行相加。
double sum = i;
i = 0.0;
return sum;
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# Sum(Eval("a1").ToString(),1) %>
</td>
<td>
<%# Sum(Eval("a2").ToString(),2)%>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
<tr>
<td>
<%=OK(1)%> </td>
<td>
<%=OK(2)%>
</td>
</tr>
</table>
</FooterTemplate>
</asp:Repeater>
static int i_1=0;
static int i_2=0;
public string Sum(string j,string k)
{
if(k=="1")
{
i_1 += Convert.ToInt32(j);
return j;
}
else if(k=="1")
{
i_2 += Convert.ToInt32(j);
return j;
}
}
//值
public string OK(string k)
{
if(k=="1")
{
return i_1;
}
else if(k=="2")
{
return i_2;} }手写的。。有点乱你凑活看把。。
不要遍历repeater 。不但消耗内存。还浪费速度~~~
SQL 查询的时候算出来~~~~~
没有必要在用程序实现了
select id,a,sum(a) as A_sum from A