Bonjour,

Je cherche à récupérer la valeur de mon paramètre JavaScript en code Behind.
Sur le clique d'un bouton, je pose une question qui doit me retourner oui/non.
Sous IE 7
-- Je récupére bien le contenu de mon paramètre. Mais le page_load est appelé 2 fois. Et c'est sur le 2 éme passage que le paramètre est bien initialisé.
Sous FireFox
-- Le page_load est appele une seul fois et de ce fait le contenu de mon paramètre est nul.

Comment faire pour que cela fonctionnne sous les 2 navigateurs ?
Attention la propriété validateRequest doit rester à false.

Code JavaScript dans ma form ASPX.
Les propriétés de ma form EnableEventValidation="true" validateRequest="false"
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
 
<script type="text/javascript">
 
    function DoMessage() 
    {
        if (confirm("Voulez vous créer une demande sur tous les éléments la liste?") == true) 
        {
            ParametrePostBack = 'true';
        }
        else 
        {
            ParametrePostBack = 'false';
        }
        // Renvoie un postback en indiqant la provenance via le bouton BtnCreerDemandeElements avec le paramètre
        setTimeout("__doPostBack('BtnCreerDemandeElements','" + ParametrePostBack + "')", 0);
    }
</script>
Code behind C#
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
 
	protected void Page_Load(object sender, EventArgs e)
    {
		if (IsPostBack)
		{
			string MonControlParametre  = Page.Request.Params["__EVENTTARGET"];
                if (MonControlParametre.ToUpper() == "BTNCREERDEMANDEELEMENTS")
                {
                    string Parametre = Page.Request.Params["__EVENTARGUMENT"];
                    if (Parametre.ToUpper() == "TRUE")
                    {
                        Mon traitement
                    }
                }
		}
	}