Comment puis-je utiliser la barre de progression de l'interface utilisateur JQuery dans le panneau de mise à jour?
Lorsque j'essaie de faire ce qui suit, progresbar n'est pas mis à jour lorsqu'il se trouve dans le panneau de mise à jour.Mise à jour de la barre de progression de l'interface utilisateur JQuery à l'intérieur du panneau de mise à jour
<script type="text/javascript">
$(document).ready(function() {
$("#progressbar").progressbar({ value: 0 });
$("#progressbar").css({ 'background': 'LightYellow' });
$("#progressbar > div").css({ 'background': '#3366CC' });
});
</script>
<script type="text/javascript">
var counter = 0;
function UpdateProgress() {
$("#progressbar").progressbar("value", counter);
counter = counter + 10;
if (counter >= 100) {
counter = 0;
}
else
setTimeout('UpdateProgress()', 1000);
}
</script>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="Button1" OnClick="Button1_Click" />
<asp:panel ID="Panel1" runat="server" Visible="True">
<div id="progressbar" style="height:30px;"></div>
</asp:panel>
</ContentTemplate>
</asp:UpdatePanel>
code-behind:
protected void Button1_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>UpdateProgress();</script>", false);
}
Cela fonctionne, mais peut-être est-il préférable de déplacer la barre de progression en dehors du panneau ou cela n'améliorera pas les performances? – shivesh
@shivesh - Si elle n'est pas mise à jour depuis le serveur alors oui, par tous les moyens, déplacez-la hors du panneau, il n'y a que des avantages à cette approche. –