IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Comportement du RequiredFieldValidator


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 23
    Points : 21
    Points
    21
    Par défaut Comportement du RequiredFieldValidator
    Bonjour, j'ai un petit soucis avec le comportement RequiredFieldValidator sur lequel je viens de me casser la tete une demi-journee, j'aurais besoin d'aide extérieure !!

    J'ai créé un User Control dans le quel j'ai un TextBox et un RequiredFieldValidator attaché a ce TextBox et et un Button.

    Quand je rajoute le user control a mon formulaire, si le TextBox est vide, et que je clique sur le bouton je vois le message de mon Validator jusque la tout va bien. Ensuite quand je remplis mon TextBox et que je clique a nouveau sur mon bouton, le message d'erreur disparait mais la page n'est pas renvoye au serveur (test avec mode Debug et point d'arret dans VS 2005), il faut que je clique une deuxieme fois sur le bouton pour que la page soit envoye au serveur.

    PS : Test réalisé sous IE7, FF 2.0.0.3 avec le serveur de VS 2005

    PS 2 : Je n'ai pas pu mettre le control en piece jointe vu que le forum n'accepte pas les fichiers .ascx

    Je vous mets les sources au cas ou ... :

    InvrptMovement.aspx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <%@ Page Language="C#" CodeFile="InvrptMovement.aspx.cs" Inherits="InvrptMovement" %>
     
    <%@ Register TagPrefix="EDIControl" TagName="InvrptSearchForm" Src="~/controls/InvrptSearchForm.ascx" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    	<title>Mercedes INVRPT Movement</title>
    	<link href="App_Themes/style.css" rel="stylesheet" type="text/css" />
    	<link href="App_Themes/Calendar.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    	<form id="form1" runat="server">
    		<EDIControl:InvrptSearchForm ID="SearchForm" runat="server" />
    	</form>
    </body>
    </html>
    InvrptMovement.aspx.cs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    using System;
     
     
    public partial class InvrptMovement : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
     
        }
    }
    ~/controls/InvrptSearchForm.ascx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <%@ Control Language="C#" ClassName="InvrptSearchForm" %>
     
    <script runat="server">
    	protected void Page_Load(object sender, EventArgs e)
    	{
    	}
    </script>
     
    <table class="form">
    	<tr>
    		<td colspan="2">
    			Part Number
    		</td>
    		<td>
    			<asp:TextBox ID="PartNbrText" runat="server"  />
    		</td>
    	</tr>
    	<tr>
    		<td colspan="3">
    		<asp:RequiredFieldValidator 
    				ID="RequiredValidator" 
    				runat="server" 
    				ControlToValidate="PartNbrText"
    				Display="Dynamic" 
    				ErrorMessage="Field Required"
    				/>
     
    		</td>
    	</tr>
    	<tr>
    		<td colspan="2">
    		</td>
    		<td>
    			<asp:Button ID="SearchButton" runat="server" Text="Search" CausesValidation="true"/>
    		</td>
    	</tr>
    </table>
    Fichiers attachés Fichiers attachés

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 23
    Points : 21
    Points
    21
    Par défaut
    Bon personne n'a l'air d'avoir une réponse du coup j'ai fait autrement, je fait tous les tests dans un CustomValidator comme ca je suis sur que ca repasse par le serveur et que j'ai pas de comportement JavaScript bizarre...

    Cependant dans mon CustomValidator quand je mets le ControlToValidate a la valeur du TextBox que je veux tester, si l'utilisateur ne remplit rien dans le TextBox, le serveur ne passe pas par ma fonction de validation... Je sais pas si c'est un comportement normal mais c'est assez genant, pour arranger les choses j'ai enlevé l'argument ControlToValidate ce qui fait que le serveur passe a coup sur dans ma fonction de validation mais je suis obligé d'utiliser TextBoxID.Text au lieu de arguments.Value (et donc ma fonction n'est pas réutilisable ...)

    Alors ma deuxieme question (peut-etre que qqn aura une reponse cette fois ...) : Y a-t-il un moyen de forcer le serveur a passer dans la fonction de validation meme si arguments.Value.Equals("") ???

    Merci de votre aide !

Discussions similaires

  1. open avec comport
    Par Goldocrack dans le forum C++Builder
    Réponses: 6
    Dernier message: 15/04/2009, 08h12
  2. [HttpClient] comportement bizarre, saute des catch()...
    Par iubito dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 04/02/2004, 15h25
  3. [Sybase] Comportement bizarre d'une table
    Par sdozias dans le forum Sybase
    Réponses: 4
    Dernier message: 03/02/2004, 10h39
  4. [Free Pascal] Comportement de Exec
    Par néo333 dans le forum Free Pascal
    Réponses: 3
    Dernier message: 01/11/2003, 17h46
  5. Réponses: 2
    Dernier message: 22/09/2003, 11h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo