JavaScript confirmation

M

Maziar Aflatoun

Hi everyone,

Does anyone how to add a javascript confirmation popup to a link button?

<asp:ButtonColumn HeaderText="Del" ButtonType="LinkButton" Text="Del"
CommandName="Delete" />

Thank you
Maz.
 
K

Ken Cox [Microsoft MVP]

Hi Maz,

The easiest way is to convert it to a template column, give it an ID and
then add the JavaScript when the item is created. The code below should get
you started. Let us know if it helps?

Ken
Microsoft MVP [ASP.NET]
Toronto

<asp:datagrid id="dgAppStatus" Runat="server"
AutoGenerateColumns="False" DataKeyField="EmployID">
<columns>
<asp:boundcolumn DataField="EmployID"
SortExpression="EmployID" HeaderText="Employee ID"></asp:boundcolumn>
<asp:boundcolumn DataField="LASTNAME"
SortExpression="LASTNAME" HeaderText="Last Name"></asp:boundcolumn>
<asp:boundcolumn DataField="FRSTNAME"
SortExpression="FRSTNAME" HeaderText="First Name"></asp:boundcolumn>
<asp:templatecolumn>
<itemtemplate>
<asp:button ID="btnDelete"
CommandName="DeleteIt" Text="Delete" Runat="server"></asp:button>
</itemtemplate>
</asp:templatecolumn>
<asp:templatecolumn HeaderText="Del">
<itemtemplate>
<asp:linkbutton ID="lnkDelete" runat="server"
Text="Del" CommandName="Delete" CausesValidation="false"></asp:linkbutton>
</itemtemplate>
</asp:templatecolumn>
</columns>
</asp:datagrid>

Private Sub Page_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
If Not IsPostBack Then
dgAppStatus.DataSource = CreateDataSource()
dgAppStatus.DataBind()
End If
End Sub

Function CreateDataSource() As DataTable
Dim dt As New DataTable
Dim dr As DataRow
dt.Columns.Add(New DataColumn _
("EmployID", GetType(Int32)))
dt.Columns.Add(New DataColumn _
("LASTNAME", GetType(String)))
dt.Columns.Add(New DataColumn _
("FRSTNAME", GetType(String)))

Dim i As Integer
For i = 0 To 1
dr = dt.NewRow()
dr(0) = i
dr(1) = "FirstName " + i.ToString()
dr(2) = "LastName " + i.ToString()
dt.Rows.Add(dr)
Next i
Return dt
End Function 'CreateDataSource

Private Sub dgAppStatus_ItemCommand _
(ByVal source As Object, ByVal e _
As System.Web.UI.WebControls.DataGridCommandEventArgs) _
Handles dgAppStatus.ItemCommand
If e.CommandName = "Delete" Then
' Call delete routine here and rebind to the dataset
Response.Write("Would have deleted row index: " & _
e.Item.ItemIndex.ToString)
End If
End Sub

Private Sub dgAppStatus_ItemCreated(ByVal sender As Object, _
ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) _
Handles dgAppStatus.ItemCreated
Dim btnDel As LinkButton
Dim drow As DataGridItem
drow = e.Item
btnDel = drow.FindControl("lnkDelete")
If Not IsNothing(btnDel) Then
btnDel.Attributes.Add("onclick", _
"return confirm ('Are you sure you wish to delete this
record?')")
End If
End Sub
 

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
474,141
Messages
2,570,818
Members
47,367
Latest member
mahdiharooniir

Latest Threads

Top