Skip to main content

Prevent multiple postbacks in SharePoint 2013


The scenario:  Disabled the button after user’s click event. Prevent user from clicking it several times.

The problem: If the button is disabled, the server side event handler is not fired.

The solution: Set the property UseSubmitBehavior to false.

Explanations

Here is the working code of how to have disabled button after it is clicked:


<asp:Button ID="Button1" runat="server" Text="Do Postback" UseSubmitBehavior="false"  OnClick="Button1_Click" OnClientClick="Validate(this)"  />


       function Validate(thisObj)
       {
           thisObj.disabled = true;
           return true;
       }


If you don't set the property UseSubmitBehavior your code in the handler Button1_Click won’t fire. I spend several hours in debugging it. Hope this save time to somebody.




Comments

Popular posts from this blog

ClientPeoplePicker in SharePoint 2013

Start using SharePoint 2013 I noticed that the way for selecting people or groups is changed. The new way is simple – just ‘Enter name or email address’ without any icons for ‘Check Names’ or ‘Browse’. I guess that the PeoplePicker is changed but NO. PeoplePicker sitll has the same functionality as before. There is a new control called ClientPeoplePicker . How to use it: 1. Add this references <% @ Register TagPrefix ="wssawc" Namespace ="Microsoft.SharePoint.WebControls" Assembly ="Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 2. Add the following control declaration       < wssawc : ClientPeoplePicker          Required ="true"          ValidationEnabled ="true"          ID ="peoplePicker"          runat ="server"   ...

SharePoint 2016: High Availability Farm Topology

MinRole concept was introduced in SharePoint 2016 and it aims to simplify the process of designing the farms. However, I still find ambiguous information about the count of servers in SharePoint 2016 farm. Let's ask ourselves the question - What is the minimum number of servers which allow High Availability MinRole farm? According to technet   we have the following options: Small High Availability (HA) MinRole farm 4 Four servers with two shared roles: ·         Two Front-end with Distributed Cache servers ·         Two Application with Search servers Medium High Availability (HA) MinRole farm (Search optimized) 6 Six servers with both dedicated and shared roles: ·         Two Front-end with Distributed Cache servers ·         Two Application servers ·    ...

Load dynamically JavaScript file inside Custom Action

This starts to be very common scenario in the SharePoint online projects: You want to have custom actions (“My Action”) that execute custom logic. The main challenge is how to load the JavaScript file with this custom logic (/sites/demo/SiteAssets/Actions/dts.demo.script.js) only when the custom action needs it. One approach described in many posts is to use a Script link.  Here is a working example: function RegisterScriptLink() { var scriptBlock = 'var headID = document.getElementsByTagName("head")[0];var newScript = document.createElement("script");newScript.type = "text/javascript";newScript.src = "' scriptBlock += '/sites/demos/SiteAssets/Actions/dts.demo.script.js' + '?ver=' + ((new Date()) * 1); scriptBlock += '";headID.appendChild(newScript);'; var context = new SP.ClientContext.get_current; this.site = context.get_web(); var collU...