Solved

Java Script "Confirm" in .net

Posted on 2007-12-06
6
742 Views
Last Modified: 2013-11-26
HI,
I am using java script confirm in my .net application to show the message box with yes/no options.
but even if i select the cancel option in message box,it is deleting the value.

using c#/.net
Thank you

private void Delete_Click(object sender, System.EventArgs e)
{
SqlConnection connection = new SqlConnection("Server=Local;DataBase=mktt; uid=sa;pwd=commt");
string strDelete="DELETE from produ where pid='"TextBox1.Text+ "'";
SqlCommand command = new SqlCommand(strDelete,connection);
connection.Open();
command.ExecuteNonQuery();
Response.Write("<script>if (confirm('Permanently Deletes . Do You Want to Continue?')){window.location = \"main.aspx\"};//--></script>");
}

Open in new window

0
Comment
Question by:tag_k
  • 3
  • 2
6 Comments
 
LVL 29

Expert Comment

by:Göran Andersson
ID: 20421372
Yes, of course it is. First you delete the record, then you output the code that will show the confirmation message.

Put the confirmation message in the client side click event of the button, so that it's executed before the event is sent to the server, not after the event has been sent to the server and the new page has been sent back to the browser:

<asp:Button id="Delete" runat="server" Text="Delete" OnClick="Delete_Click" OnClientClick="return confirm('Permanently Deletes . Do You Want to Continue?');" />

When the user clicks the button, the confirm message is shown. If the user chooses not to continue, the event is not sent to the server. If the user chooses to continue, the event is sent to the server, and you can delete the record.

If you want to go the "main.aspx" page after deleting, use a redirect last in the server event handler:

Response.Redirect("main.aspx");
0
 
LVL 26

Expert Comment

by:Anurag Thakur
ID: 20436153
if you want to set the message box from the server side then yoy can add the following code in the page load event

if (IsPostBack == false)
   btnDelete.OnClientClick = "return confirm ('ermanently Deletes . Do You Want to Continue?');";
0
 

Author Comment

by:tag_k
ID: 20437595
Hi,
i have tried both the solutions but i have same error

 'System.Web.UI.WebControls.Button' does not contain a definition for 'OnClientClick'

any way to resolve this.
thanks
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 
LVL 29

Expert Comment

by:Göran Andersson
ID: 20437722
Oh, you are using framework 1.1. Missed that.

Then there is no OnClientClick property, so you have to use the attribute collection:

btnDelete.Attributes.Add("onclick", "return confirm('Permanently Deletes . Do You Want to Continue?');");

(As the server side event OnClick has the same name as the client side event onclick, you can't add it in the markup code.)
0
 

Author Comment

by:tag_k
ID: 20439587
Thanks ,but i also want to redirect it to another page after(i.e after delete) user clicks ok.
0
 
LVL 29

Accepted Solution

by:
Göran Andersson earned 500 total points
ID: 20439959
Then you use a Response.Redirect in the method, after you have closed the connection.

I added a using statement to handle the closing of the connection.

I also added encoding of the string value in the SQL query, so that the code isn't open for SQL injections. Note that I assume that you are using SQL Server. If you are using MySQL the encoding process is different.
private void Delete_Click(object sender, System.EventArgs e) {
   using (SqlConnection connection = new SqlConnection("Server=Local;DataBase=mktt;uid=sa;pwd=commt")) {
      string strDelete="DELETE from produ where pid='" + TextBox1.Text.Replace("'", "''") + "'";
      SqlCommand command = new SqlCommand(strDelete,connection);
      connection.Open();
      command.ExecuteNonQuery();
   }
   Response.Redirect("AnotherPage.aspx");
}

Open in new window

0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question