前台标签
<table class="tablelist" width="100%" border="0" cellspacing="0" cellpadding="0" id="demoTable">
<thead>
<tr>
<th scope="col" order="totalje" width="90px" nowrap>总金额</th>
<th scope="col" width="90px"nowrap >应收款</th>
<th scope="col" width="90px" nowrap>实收款</th>
<th scope="col" width="90px" nowrap>剩余款</th>
<th width="30px" nowrap><%=Resources.UI.BtnEdit%></th>
</tr>
</thead>
<tbody id="mainbody">
<asp:Repeater ID="rptList" runat="server" EnableViewState="false">
<ItemTemplate>
<tr >
<td style="text-align:right"><%#(Container.DataItem as View_CompactCustomer).totalje.ToString("n2")%></td>
<%#ShowCompactJE(Eval("ID"))%> </tr>
</ItemTemplate>
<FooterTemplate>
<td colspan="5">本页合计</td>
<td style="text-align:right"><%=totalje.ToString("n2")%></td>
<%#ShowCompactJE2()%>
</FooterTemplate>
</FooterTemplate>
</asp:Repeater>
<asp:Repeater ID="rptTotal" runat="server" EnableViewState="false">
<ItemTemplate>
<tr >
<td colspan="5">总计</td>
<td style="text-align:right"><%#ShowMoney(Eval("总金额"))%></td>
<%#ShowCompactJE3()%>
<td width="20px"></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
</table>
后台代码ShowCompactJE2
方法: public string ShowCompactJE(object id){
DataTable dt = new View_htkxService().QueryInstance.GetDataTable("exec proc_htkx_CompactID " + id.ToString() + ",'" + hkstart + "'," + "'" + hkend + "'" + ",'" + ssstart + "'," + "'" + ssend + "'," + "'" + fpstart + "'," + "'" + fpend + "'" + ",'" + qdstart + "'," + "'" + qdend + "'," + "'" + qs + "'," + "'" + servicetype + "'");
for (int i = 0; i < dt.Columns.Count; i++)
{
if (Cyberway.Common.Data.DAOCommon.DataTableHasRow(dt))
{
if (i == 0)
{
try
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit4.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + double.Parse(dt.Rows[0][i].ToString()).ToString("n2") + "</a></td>";
}
catch (Exception ex)
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit4.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + dt.Rows[0][i].ToString() + "</a></td>"; }
}
else
{
if (i == 1)
{
try
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit5.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + double.Parse(dt.Rows[0][i].ToString()).ToString("n2") + "</a></td>";
}
catch (Exception ex)
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit5.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + dt.Rows[0][i].ToString() + "</a></td>"; }
}
else
{
try
{
ret = ret + "<td style='text-align:right'>" + double.Parse(dt.Rows[0][i].ToString()).ToString("n2") + "</td>";
}
catch (Exception ex)
{
ret = ret + "<td style='text-align:right'>" + dt.Rows[0][i].ToString() + "</td>";
}
}
}
try
{
total[0, i] = total[0, i] + double.Parse(dt.Rows[0][i].ToString());
}
catch (Exception ex)
{ }
}
else
{
ret = ret + "<td>" + "</td>";
}
} }
ret = ret + "</td>";
return ret;
}
Q:如何获取总金额,与 <%#ShowCompactJE2()%>
获得的4列数据中的其中一列应收款对比,如应收款小于则显示红色。不知道能否用JS实现..??
<table class="tablelist" width="100%" border="0" cellspacing="0" cellpadding="0" id="demoTable">
<thead>
<tr>
<th scope="col" order="totalje" width="90px" nowrap>总金额</th>
<th scope="col" width="90px"nowrap >应收款</th>
<th scope="col" width="90px" nowrap>实收款</th>
<th scope="col" width="90px" nowrap>剩余款</th>
<th width="30px" nowrap><%=Resources.UI.BtnEdit%></th>
</tr>
</thead>
<tbody id="mainbody">
<asp:Repeater ID="rptList" runat="server" EnableViewState="false">
<ItemTemplate>
<tr >
<td style="text-align:right"><%#(Container.DataItem as View_CompactCustomer).totalje.ToString("n2")%></td>
<%#ShowCompactJE(Eval("ID"))%> </tr>
</ItemTemplate>
<FooterTemplate>
<td colspan="5">本页合计</td>
<td style="text-align:right"><%=totalje.ToString("n2")%></td>
<%#ShowCompactJE2()%>
</FooterTemplate>
</FooterTemplate>
</asp:Repeater>
<asp:Repeater ID="rptTotal" runat="server" EnableViewState="false">
<ItemTemplate>
<tr >
<td colspan="5">总计</td>
<td style="text-align:right"><%#ShowMoney(Eval("总金额"))%></td>
<%#ShowCompactJE3()%>
<td width="20px"></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
</table>
后台代码ShowCompactJE2
方法: public string ShowCompactJE(object id){
DataTable dt = new View_htkxService().QueryInstance.GetDataTable("exec proc_htkx_CompactID " + id.ToString() + ",'" + hkstart + "'," + "'" + hkend + "'" + ",'" + ssstart + "'," + "'" + ssend + "'," + "'" + fpstart + "'," + "'" + fpend + "'" + ",'" + qdstart + "'," + "'" + qdend + "'," + "'" + qs + "'," + "'" + servicetype + "'");
for (int i = 0; i < dt.Columns.Count; i++)
{
if (Cyberway.Common.Data.DAOCommon.DataTableHasRow(dt))
{
if (i == 0)
{
try
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit4.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + double.Parse(dt.Rows[0][i].ToString()).ToString("n2") + "</a></td>";
}
catch (Exception ex)
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit4.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + dt.Rows[0][i].ToString() + "</a></td>"; }
}
else
{
if (i == 1)
{
try
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit5.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + double.Parse(dt.Rows[0][i].ToString()).ToString("n2") + "</a></td>";
}
catch (Exception ex)
{
ret = ret + "<td style='text-align:right'><a href=# onclick=\"OpenWindow('../Compact/CompactEdit5.aspx?action=edit&id=" + id.ToString() + "',650,400,false);return false;\">" + dt.Rows[0][i].ToString() + "</a></td>"; }
}
else
{
try
{
ret = ret + "<td style='text-align:right'>" + double.Parse(dt.Rows[0][i].ToString()).ToString("n2") + "</td>";
}
catch (Exception ex)
{
ret = ret + "<td style='text-align:right'>" + dt.Rows[0][i].ToString() + "</td>";
}
}
}
try
{
total[0, i] = total[0, i] + double.Parse(dt.Rows[0][i].ToString());
}
catch (Exception ex)
{ }
}
else
{
ret = ret + "<td>" + "</td>";
}
} }
ret = ret + "</td>";
return ret;
}
Q:如何获取总金额,与 <%#ShowCompactJE2()%>
获得的4列数据中的其中一列应收款对比,如应收款小于则显示红色。不知道能否用JS实现..??
解决方案 »
- (高分)请教一个共享office文档的解决方案
- 望高手解决,文章自动分页问题,不分割HTML标签。。。。
- 关于模糊搜索的优化问题(高手请进!!!!!!!!!)
- IIS的这个异常警告是什么意思?如何解决?
- session 实现全站通,可是退出登录后同一用户不能再登陆了
- 今天问了很多空间商,都不清楚支不支持服务器能返回Last-Modified或Content-Length其中一项??
- Forms验证中的简单问题
- 100分求发EMAIL.
- 菜鸟在线求助:如何实现两个页面的传值?(最好用C#实现)
- 请问向数据中插入一个记录以后,怎么取得这个新增记录的ID,用Asp.net
- .net DetailsView 控件中取值问题!高手请进!
- 各位大哥,帮我看看这个配置文件 compilers显示无效错误
window.onload=function(){
var money1 = document.getElementById("总金额").innerHTML;
var money2 = document.getElementById("实收金额").innerHTML;
if(parseInt(money1)>parseInt(money2))
{
document.getElementById("剩余金额").style.color="red";
}
}
</script>
<asp:Reapter>
<ItemTemplate>
<span id="总金额"><%# Eval("总金额")%></span>
<span id="实收金额" ><%# Eval("实收金额")%></span>
<span id="剩余金额"><%# Eval("剩余金额")</span>
</ItemTemplate>
</asp:Reapter>
2 从后台绑定时改变颜色,可以给控件赋前台的html 如:ltr1.text="<span color='red'>不一致</span>"
也可以通过后台改变前台控件的属性。如:label1.text="不一致". label1.Attribute.add("color","red")
总金额字段是用
<td style="text-align:right"><%#(Container.DataItem as View_CompactCustomer).totalje.ToString("n2")%></td>
获取到,而后面的应收金额时候通过后台函数获取,现在就是没做过这种一个由Container获取到的值和后台函数dt的一个循环对比...有没有类似例子
得到第i行第j列的内容的方法。
document.getElementById("rptTotal").rows[i].cells[j].innerHTML至于比较哪一列,自己考虑吧
{
x1 = document.getElementById("rptTotal").rows[i].cells[0].innerHTML
}这种方法。,
你的代码真够乱的啊。Repeater本身就生成了表格,你还怎么在后台"<tr>..."这样生成呢
你是想通过Ajax来对比,那么只需要获取服务端的“应收金额”数组,并用JS取得客户端的总金额,通过下标来对比并设置颜色如果是某个PostBack的动作后比较,那就把应收金额Post到服务端再比较,并设置颜色
document.getElementById("rptTotal").rows.length
repeater是变成table,因此获取不到ID repTotal 吧?