0

こんにちは、動的グリッドビューに入力された値を追加し、javascript を使用してグリッドビューの外側にあるテキスト ボックスに合計を表示しようとしています。テキストボックスに表示されます。合計をテキストボックスに表示したいのですが、どこが間違っているのか教えてもらえますか?

私のJavaScriptコード

<script type="text/javascript">
function showCal(obj){
    var table = document.getElementById("Gridview1");
    var sum = 0;
    for (var i = 1; i < table.rows.length; i++) 
    {
        if (isNaN(table.rows[i].cells[1].innerText != null))
        {
            if (!isNaN(table.rows[i].cells[1].innerText))
            {
                sum = (parseFloat(sum) + parseFloat(table.rows[i].cells[1].innerText)).toString();
            }
        }
        document.getElementById("TextBox4").innerText = sum;
    }
}

私の ASP.NET コード
PagerStyle-Mode="NumericPages"

        AutoGenerateColumns="false" onrowcreated="Gridview1_RowCreated" Height="16px">
          <PagerStyle CssClass="pgr"  Height="25px" BorderStyle="Solid" />
        <Columns>
        <asp:BoundField DataField="RowNumber" HeaderText="Serial Number" />
        <asp:TemplateField HeaderText="Air/Bus/Train Fare">
            <ItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server" CssClass="txtBoxNormalmedium" onkeyup="showCal(this);"  ></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="City To">
            <ItemTemplate>
                <asp:TextBox ID="TextBox2" runat="server" CssClass="txtBoxNormalmedium" ></asp:TextBox>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="City From">
            <ItemTemplate>
                 <asp:TextBox ID="TextBox3" runat="server" CssClass="txtBoxNormalmedium"></asp:TextBox>
            </ItemTemplate>
            <FooterStyle HorizontalAlign="Right" />
            <FooterTemplate>
             <asp:Button ID="ButtonAdd" runat="server" Text="Add New Row"
                    onclick="ButtonAdd_Click" CssClass="btnNormalAdd" />
            </FooterTemplate>
        </asp:TemplateField>
             <asp:TemplateField>
            <ItemTemplate>
                <asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click" CssClass="lnkbut">Remove</asp:LinkButton>
            </ItemTemplate>
        </asp:TemplateField>
        </Columns>
    </asp:gridview>


<asp:TextBox ID="TextBox4" runat="server" onkeyup="showCal(this);" ></asp:TextBox>
4

1 に答える 1

0

このコードはあなたのものに似ています:

var sum = 0;
var cell = 5.5;

if (isNaN(cell != null)) {
    if (!isNaN(cell)) {
        sum = sum + cell;
    }
}
console.log(sum);

最初の isNaN() チェックは削除する必要があります。

if (cell != null) {
    if (!isNaN(cell)) {
于 2013-11-05T07:21:30.010 に答える