gridview CommandField Delete Jave script confirm on OnClientClick

J

Jerry C

I have a gridview on a clientcontrol .ascx I am using the tutorial22 from
MSDN and it is not working. The jave confirm box comes up but when I click OK
the page does not post back.

MSDN page:
http://msdn2.microsoft.com/en-us/library/bb428868.aspx
Section:
Step 3: Configuring the OnClientClick Property for the Delete Button in a
CommandField
The Jave for the page is:

<input type="button" value="Delete" onclick="return confirm('Are you sure
you want to delete this record.
');javascript:__doPostBack('PRBPCreativeBrief1$gdApproval','Delete$0')"
class="ms-topnav" />

The Java for the confirm is there but the next java for the post back does
not run.

The vb code is:
Dim btnDelete As Button = CType(e.Row.Cells(5).Controls(0), Button)
btnDelete.OnClientClick = "return confirm('Are you sure you want to delete
this record. ');"

Thank you
 
S

Steven Cheng [MSFT]

Hi Jerry,

As for DataGrid/GridView's button field confirm javascript, I always use
the following kind of confirm statement:

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton lb = e.Row.FindControl("LinkButton1") as LinkButton;

if (lb != null && lb.Text == "Edit")
{
lb.OnClientClick = "if(confirm('are you sure to
edit?')==false){return false;}";

}
}
}

It works well on both datagrid and GridView on my local test pages. You can
also try it to see whether it works.

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead


Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
 
J

Jerry C

Steven,

Good to here from you, Thenk you for the reply.

I am using that code but the object is a button instead of a linkbutton.
I changed the grid from using a CommandField to TemplateField with a button
and it works. It must be using a button in the commandfield instead of a
linkbutton.
I think adding java script to the button makes the postback not work.

Any way using the TemplateFiled works so I am moving on.

Thank you

--
Jerry


Steven Cheng said:
Hi Jerry,

As for DataGrid/GridView's button field confirm javascript, I always use
the following kind of confirm statement:

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton lb = e.Row.FindControl("LinkButton1") as LinkButton;

if (lb != null && lb.Text == "Edit")
{
lb.OnClientClick = "if(confirm('are you sure to
edit?')==false){return false;}";

}
}
}

It works well on both datagrid and GridView on my local test pages. You can
also try it to see whether it works.

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead


Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,051
Latest member
CarleyMcCr

Latest Threads

Top