Sometimes, you want to handle an event such as a button click on the client first, and then post the click event to the server only under certain conditions. Here’s how to make both click events fire:
- Create an HTMLControl like this, with the attribute runat set as “server”:
- Add the attribute onclick to the control at server-side:
btnDelete.Attributes.Add("onclick","if(DeleteData())");
- Add the server-side onclick event:
this.btnDelete.ServerClick += new System.EventHandler(this.btnDelete_ServerClick);private void btnSave_ServerClick(object sender, System.EventArgs e)
{}
Then you can write the DeleteData() method in client-side JavaScript. If that method returns true, the page will post back to the server, and the btnSave_ServerClick method will execute. However, if the DeleteData() method returns false, the page will not post back.