Bonjour,

je rencontre un problème lors d'un appel de méthode côté serveur en AJAX via un asp:Timer.

Un peu de code pour expliciter la chose :

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
 
            <asp:ScriptManager ID="ScriptManager" runat="server" />
            <asp:Timer ID="Timer" runat="server" Interval="2000" OnTick="TimerTick" />
            <asp:UpdatePanel ID="UpdatePanel" UpdateMode="Conditional" runat="server">
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="Timer" />
                </Triggers>
                <ContentTemplate>
                    <div style="height : 10px; width : 350px; background-color: #f2f2f2; border-color :    black; border-width    : 1px; border-style    : solid;">
                        <asp:Panel id="Progression" Height="10px" BackImageUrl="../styles/progress_red.gif" runat="server"></asp:Panel>
                    </div>
                    <asp:HiddenField runat="server" id="ProgressPerc"></asp:HiddenField>
                </ContentTemplate>
            </asp:UpdatePanel>
            <script type="text/javascript">
                function refresh() { 
                    update_progress($('ctl00_CphContent_ProgressPerc').value);
                    setTimeout('refresh();', 2000);
                }
 
                refresh();
            </script>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
    private static int i = 0;
 
    protected void TimerTick(object sender, EventArgs e)
    {
        i++;
        ProgressPerc.Value = i + "%";
    }
La finalité de ce code est de mettre en place une barre de progression

Lorsque j'exécute, cela fonctionne : ma barre de progression est bien mise à jour. Néanmoins, à chaque "Tick" j'ai une alert qui apparaît pour me dire
PageRequestManagerParserErrorException : The message received from the server could not be parsed
Pas mal d'exemples sur internet indiquent que cette erreur apparaît quand on fait un response.Write mais ici je n'en fais jamais usage.

Une idée ? Je suis un peu pommé...