mina morsali
mina morsali

Reputation: 778

How to determine which button was clicked in gridview

I have a gridview and my gridview has a template feild for image button,for delete one row. At the moment I use rowcommand and rowargument for this image button to recognize what row want to delete. but I need to implement below scenario:

I want when user click on imagebutton,no postback occured ,a modal box(bootstrap modal) open ,and only when user click yesI'm sure button in modal, postback occure and data deleted...

Is this possible with asp.net gridview and if yes,How I can determine what button click in "yesI'm sure button" ???

thank you

Upvotes: 0

Views: 2019

Answers (1)

Usman Khalid
Usman Khalid

Reputation: 3110

Yes this is possible. Please try the below code:

<script type="text/javascript">

    function ShowModal(gridItemIndex) 
    {
        $(document).ready(function () 
            {
                $('#mymodal').modal('show');
                var row = gridItemIndex.parentNode.parentNode;
                var rowIndex = row.rowIndex-1; //row index of that row.
                document.getElementById("<%=hfID.ClientID %>").value =rowIndex;
            });
    }

</script>

<asp:gridview id="yourGridView" onrowcommand="GridView_RowCommand"
    <asp:TemplateField>
        <ItemTemplate>
            <asp:ImageButton name="btnDelete" CommandName="Delete" OnClientClick="return ShowModal(this);" ImageUrl="/imagepath.pgn" runat="server" />
        </ItemTemplate>
    </asp:TemplateField>
</asp:gridview>

Then in code behind use the following event of GridView.

protected void GridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName=="Delete")
    {
        // Write your delete code here...
    }
}

Upvotes: 0

Related Questions