我想要达到的目标是: 当从FTP服务器下载文件时,它应该向bootstrap进度条添加2%。
C#代码正常,文件下载但进度条停留在2%。
HTML和Javascript是可以正常工作的,但是当从代码中调用它时,它只执行一次。即bootstrap进度条仅移动到2%。
C#
int count=2;
using (WebClient ftpClient = new WebClient())
{
ftpClient.Credentials = new System.Net.NetworkCredential("win10", "zzzz");
for (int i = 0; i <= directories.Count - 1; i++)
{
if (directories[i].Contains("."))
{
string path = "ftp://192.168.0.120/" + directories[i].ToString();
string trnsfrpth = @"E:\\ProjectLocalPath\" + directories[i].ToString();
ftpClient.DownloadFile(path, trnsfrpth);
ClientScript.RegisterStartupScript(this.GetType(), "lol", "javascript: updateProgress('" + count2 + "')", true);
count2 += 2;
}
}
}
HTML
<div id="div3" runat="server" class="progress progress-danger progress-striped progress progress_sm active" style="width: 425%;">
<div id="e3" style="width: 0%;" class="bar" runat="server" role="progressbar">
</div>
</div>
的Javascript
var _prevent;
var percentage;
function updateProgress(percentage) {
_prevent = setInterval(function () {
var $bar = $('.bar');
if (percentage > 100) {
percentage = 100;
clearInterval(_prevent);
}
$bar.width(percentage);
$bar.text(percentage + "%");
},800);
}
window.clearInterval(_prevent);
答案 0 :(得分:0)
来自MSDN的信息:
启动脚本由其密钥及其类型唯一标识。具有相同密钥和类型的脚本被视为重复。只能在页面中注册一个具有给定类型和密钥对的脚本。尝试注册已注册的脚本不会创建脚本副本。
换句话说,您需要为每个循环的迭代创建一个不同的键(而不仅仅是&#34; lol&#34;)。