Всего столбец GridView с помощью JQuery.
Нашел этот отличный пример того, как суммировать строку gridview в интернете.
Просто нужна помощь в адаптации его к моему решению.
Я предполагаю, что проблема заключается в строке "#GridView1 span[id*='lblTotal']"
поскольку это было единственное реальное изменение, которое я сделал из исходного кода.
Код ниже:
<script language="javascript" type="text/javascript"> function calculate() { var Amount = 0; $("#GridView1 span[id*='lblTotal']").each(function (index) { //Check if number is not empty if ($.trim($(this).val()) != "") //Check if number is a valid integer if (!isNaN($(this).val())) Amount = Amount + parseFloat($(this).val()); }); $("#GridView1 span[id*='lblTotalAmount']").text(Amount); } </script>
Отметьте это ниже:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowDataBound="GridView1_RowDataBound" DataSourceID="AccessDataSource1" ShowFooter="True" style="margin-bottom: 0px"> <Columns> <asp:TemplateField HeaderText="Devices And Services" Visible="True" HeaderStyle-HorizontalAlign="Left" FooterText="Payable monthly in advance (excluding Agreement items):" ItemStyle-BackColor="#CCCCCC"> <ItemTemplate> <asp:Label ID="lblItemDescription" runat="server" Width="382" Text='<%# Eval("itemDescription") %>'></asp:Label> </ItemTemplate> <HeaderStyle HorizontalAlign="Left"></HeaderStyle> </asp:TemplateField> <asp:TemplateField HeaderText="Rate"> <ItemTemplate> <asp:Label ID="lblRate" runat="server" width="50" ></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Number" ControlStyle-BackColor="#FFFFCC"> <ItemTemplate> <asp:TextBox ID="txtBoxNumber" Width="100px" runat="Server" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Total" ItemStyle-CssClass="total"> <ItemTemplate> <asp:Label ID="lblTotal" runat="Server" Width="106" /> </ItemTemplate> <FooterTemplate> <asp:Label ID="lblTotalAmount" runat="server" /> </FooterTemplate> </asp:TemplateField> </Columns> <FooterStyle Font-Bold="True" /> </asp:GridView>
В моем решении мой lblTotal вычисляется с помощью Javascript
Код Ниже:
<script type="text/javascript"> function multiply(Rate, number, total) { var grid = document.getElementById('GridView1'); var num = parseFloat(document.getElementById(number).value); var tot = document.getElementById(total); var totValue = parseFloat(((Rate * num))); var totValueRound = Math.round(totValue); var totValueRound = totValue; tot.innerHTML = totValue.toFixed(2); calculate(); } <script/>
Herman<T>.Instance
'Я предполагаю, что проблема заключается в строке "#пядь управления gridview1[ИД*='lblTotal']"'
Ну, знаешь что. Чем мы можем вам помочь сейчас? Есть ли какая-нибудь ошибка/исключение, с которым вы сталкиваетесь?
Andrew Chambers
ошибки нет в помине. ты что-нибудь видишь здесь digimanus?
Давайте работать, чтобы помочь разработчикам, а не заставлять их чувствовать себя глупо.