web 2.0

Empêcher les POST multiples d'une page ASP.NET

Bonjour,

Je suis tombé récemment sur un commentaires d'un article du blog de Lorin Thwaits ou il étais question de pouvoir prévenir les POST multiples d'une page ASP.NET.

En voici donc la solution

Au lieu d'utiliser une page décrite comme ceci

<form id="form1" runat="server" >  
    
    <asp:Button ID="btEnter" runat="server" Text="Enter" onclick="btEnter_Click" /> 

</form>

Faites comme cela

<form id="form1" runat="server" onsubmit="this.onsubmit=function(){return false;}; return true;">  
    
    <asp:Button ID="btEnter" runat="server" Text="Enter" onclick="btEnter_Click" /> 

</form>

 

Le code Javascript dans l'attribut "onsubmit" de la balise <form> va empêcher que d'autres envois de formulaire soit effectués.

Une fois que la page a été postée pour la première fois l'attribut reviens a sa valeur initiale et le formulaire peut donc être de nouveau posté.

 

yield return this;



Views(540)

kick it on DotNetKicks.com

Share/Save/Bookmark Subscribe

Currently rated 1.0 by 1 people

  • Currently 1/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

ASP.NET | Javascript

Comments

Add comment


 

biuquote
Loading



Technorati Profile