Refactor Code

  • Gravatar
    Attaching JavaScript Events With Server Side Binding Code

    by azamsharp on 5/22/2008 4:52:51 PM
  • Recently, I had to send the row index of the GridView row to a JavaScript function. The row index can be accessed using Container.DataItemIndex but I was having trouble with the commas and quotes stuff. So, I just used a server side method to generate a JavaScript method and return to the HTML side. I still think the call to AttachFunction is not a good idea and this should be handled on the client side. Any refactorings?
  • <ItemTemplate>
    <asp:TextBox ID="txtCategoryName" onchange='<%# AttachFunction(Container.DataItemIndex ) %>' runat="server" Text='<%# Eval("CategoryName") %>' />
    </ItemTemplate>

    protected string AttachFunction(int rowIndex)
    {
    string function = "saveRowIndex(";

    return function + rowIndex + ")";
    }

  • Refactor it!
Please log in to refactor the code! Login