ASP.NET GridView JavaScript Button Click
By Robbe Morris
Duplicate the GridView's button click event.
Since server side controls in ASP.NET eventually are rendered as HTML in the browser, you often just need to do a view source in the browser to see the HTML generated by the control and the calls to JavaScript they make. Here is a small sample that demonstrates how to trigger a click from a ButtonField.
<script type="text/javascript">
function DoMe(row)
{
alert('I am submitting row ' + row);
__doPostBack('ctl00$MiddleContent$GridView1', 'Select$' + row);
}
</script>
<a href="javascript:DoMe(0);">Submit Row 0</a> <a href="javascript:DoMe(1);">Submit Row 1</a>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowCommand="GridView1_RowCommand" >
<Columns>
<asp:BoundField DataField="Column1"/>
<asp:ButtonField ButtonType="Button" Text="Command" CommandName="Select" />
</Columns>
</asp:GridView>
// Code Behind
protected void Page_Load(object sender, EventArgs e)
{
if (this.Page.IsPostBack) return;
var dataTable = new DataTable();
dataTable.Columns.Add("column1");
var row = dataTable.NewRow();
row[0] = "Row 1";
dataTable.Rows.Add(row);
row = dataTable.NewRow();
row[0] = "Row 2";
dataTable.Rows.Add(row);
this.GridView1.DataSource = dataTable;
this.GridView1.DataBind();
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Select")
{
Debug.WriteLine("I submitted " + e.CommandArgument.ToString());
}
}
ASP.NET GridView JavaScript Button Click (2656 Views)