开发者

Add Duplicate Row & Columns OnClick c#

I Have an ASP:Table that has a row with cells in I need to be able to add a row to this by clicking the Add button at the end which duplicates the existing row.

My Table code

<asp:Table ID="Table1" runat="server" Height="50%" Width="100%">
            <asp:TableHeaderRow CssClass="lblrow2" HorizontalAlign="Left" BackColor="AliceBlue">
                <asp:TableHeaderCell ID="haccountref">Account Ref:</asp:TableHeaderCell>
                <asp:TableHeaderCell ID="hproduct">Product</asp:TableHeaderCell>
                <asp:TableHeaderCell ID="hqty">Qty:</asp:TableHeaderCell>
       开发者_运维技巧         <asp:TableHeaderCell ID="hunitprice">Unit Price:</asp:TableHeaderCell>
                <asp:TableHeaderCell ID="hdiscount">Discount:</asp:TableHeaderCell>
                <asp:TableHeaderCell ID="htotal">Total Line Amount:</asp:TableHeaderCell>
            </asp:TableHeaderRow>
            <asp:TableRow CssClass="r1">
                <asp:TableCell><asp:TextBox ID="vaccountref" ReadOnly="True" runat="server"></asp:TextBox></asp:TableCell>
                <asp:TableCell><asp:DropDownList runat="server" ID="vproduct"></asp:DropDownList></asp:TableCell>
                <asp:TableCell><input id="Qty" type="text" /></asp:TableCell>
                <asp:TableCell><input id="Unit Price" type="text" /></asp:TableCell>
                <asp:TableCell><input id="Discount" type="text" /></asp:TableCell>
                <asp:TableCell><input id="Total" type="text" /></asp:TableCell>
                <asp:TableCell><input id="Button1" type="image" src="plusButton.png" value="button" /></asp:TableCell>
            </asp:TableRow>
        </asp:Table>

My c# code behind - I get no errors but no duplicate row

protected void Button1_Click(object sender, System.EventArgs e)
        {
            // Total number of rows.
            int rowCnt;
            // Current row count.
            int rowCtr;
            // Total number of cells per row (columns).
            int cellCtr;
            // Current cell counter
            int cellCnt;

            rowCnt = int.Parse(TextBox1.Text);
            cellCnt = int.Parse(TextBox2.Text);

            for (rowCtr = 1; rowCtr <= rowCnt; rowCtr++)
            {
                // Create new row and add it to the table.
                TableRow tRow = new TableRow();
                Table1.Rows.Add(tRow);
                for (cellCtr = 1; cellCtr <= cellCnt; cellCtr++)
                {
                    // Create a new cell and add it to the row.
                    TableCell tCell = new TableCell();
                    tCell.Text = "Row " + rowCtr + ", Cell " + cellCtr;
                    tRow.Cells.Add(tCell);
                }
            }
        }


Ensure that you're actually using an ASP.NET server control button. You're currently using an HTML input image/button. It won't post back for the server to capture that event.

Try this as the last column in your table with an <asp:ImageButton> server control.

<asp:TableCell>
    <asp:ImageButton id="Button1"  runat="server" 
         ImageUrl="plusButton.png"   OnClick="Button1_Click" />
</asp:TableCell>

That should replace: <input id="Button1" />

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜