我正在使用前台的Twitter bootstrap在C#.net上创建一个Web应用程序。 在onClick按钮中,我需要显示一个包含progressBar div的div,当进程完成时,隐藏div。我正在使用此代码:
web.aspx :
<asp:Button ID="btnProcess" runat="server" Text="Process" OnClick="btnProcess_Click" />
// on load web, this div is invisible
<div class="progress progress-striped active invisible" id="progressBar" runat="server">
<div class="bar" style="width: 90%;" id="percentProgresBar"></div>
</div>
我的 web.aspx.cs :
protected void btnProcess_Click(object sender, EventArgs e){
// here change class to "visible"
progressBar.Attributes["class"] = "progress progress-striped active visible";
//--- all my process ----
//--- all my process ----
//when my process finish, hide the div again, change the css class to "invisible"
progressBar.Attributes["class"] = "progress progress-striped active invisible";
}
我的问题是,当我的过程结束时,div是可见的,而不是在开始时。我该如何解决这个问题? t为了让div显示出来 - 我的所有过程----当完成我的代码的那一部分时,让div再次隐形。
感谢您的帮助!!
答案 0 :(得分:0)
您可以尝试通过将其赋予 ID 并将其添加到 runat =“ server” 来将div转换/转换为服务器端控件,然后在代码中使用它
答案 1 :(得分:-1)
而不是使用这些类,给出要隐藏的属性Style =“display:none”和Style =“display:”以使其可见,但这不符合您的目的。但是,要显示进度条,您只需使用更新进度
即可<form id="form1" runat="server">
<asp:ScriptManager ID="sm" runat="server" />
<asp:UpdateProgress runat="server" id="PageUpdateProgress">
<ProgressTemplate>
Loading...
</ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel runat="server" id="Panel">
<ContentTemplate>
<asp:Button runat="server" id="upd" onclick="updButton_Click"
text="click to update" />
</ContentTemplate>
</asp:UpdatePanel>
</form>
在updButton_Click后面的代码需要很长时间才能更新,在页面上你会看到Loading ...,你可以将文本更改为a使其更像ProgressBar(例如GIF移动栏)图像)