一連のタスクを実行するボタンクリック機能があります。各タスクの完了時にプログレスバーを表示して更新したいのですが、たとえば25%、50%です。同様に、jQueryプログレスバーを使用してこれを実現し、4つの非表示フィールドを使用してさまざまな値を格納していますが、プログレスバーは関数がオンになり、100%完全であることを直接示しますコードサンプルは次のとおりです
<asp:Button ID="Button1" runat="server" Text="btnExecute" OnClientClick="return timeout_init();" OnClick="btnExecute_Click" />
codebehind:さまざまな隠しフィールド値を設定する
protected void btnExecute_Click(object sender, EventArgs e)
{
//Ist level task complete
hfProgressValue.Value = "25";
Thread.Sleep(1000);
//IInd level task completion
ProgressValue1.Value = "50";
Thread.Sleep(1000);
//3rd level task
prg2.Value = "75";
Thread.Sleep(1000);
//4th level task
hfprg3.Value = "100";
}
javascript
function timeout_init() {
var progressBarVal = $("input[id$='hfProgressValue']").val();
var progressBarVal1 = $("input[id$='ProgressValue1']").val();
var progressBarVal2 = $("input[id$='prg2']").val();
var progressBarVal3 = $("input[id$='hfprg3']").val();
if (progressBarVal != "") {
$("#progressbar").progressbar({
value: parseInt(progressBarVal)
});
}
if (progressBarVal1 != "") {
$("#progressbar").progressbar({
value: parseInt(progressBarVal1)
});
}
if (progressBarVal2 != "") {
$("#progressbar").progressbar({
value: parseInt(progressBarVal2)
});
}
if (progressBarVal3 != "") {
$("#progressbar").progressbar({
value: parseInt(progressBarVal3)
});
}
setTimeout('timeout_init()', 0);
}