Javascript 使用样式更新进度的进度条

Javascript 使用样式更新进度的进度条,javascript,c#,jquery,html,asp.net,Javascript,C#,Jquery,Html,Asp.net,我正在使用一个div和bootstrapcss中的类创建一个进度条 实际上,我正在使用JQuery动态设置进度条的值 该过程获取进度条的值,然后将其存储到HiddenField中,然后从HiddenField中检索该值。最后,使用JQuery更改进度条的宽度和aria valuenow 问题是,进度条的宽度和宽度现在仍然设置为0。谁能帮我一下吗 进度条的代码 <div class="skills-wrapper wow animated bounceIn animated animated

我正在使用一个div和bootstrapcss中的类创建一个进度条

实际上,我正在使用JQuery动态设置进度条的值

该过程获取进度条的值,然后将其存储到HiddenField中,然后从HiddenField中检索该值。最后,使用JQuery更改进度条的宽度和aria valuenow

问题是,进度条的宽度和宽度现在仍然设置为0。谁能帮我一下吗

进度条的代码

<div class="skills-wrapper wow animated bounceIn animated animated" data-wow-delay="0.2s" style="visibility: visible; animation-delay: 0.2s; animation-name: bounceIn;">
  <h3 class="heading-progress">Login & Login Failures (%) <span class="pull-right" runat="server" id="Lbl_PercentageCheck"></span></h3>
     <div class="progress">
        <div class="progress-bar" runat="server" aria-valuemax="100" aria-valuemin="0" role="progressbar"></div>
  </div>               

我发现了你的问题。ToString方法使用逗号分隔符创建字符串。进度条只接受带有点分隔符的双精度字符

这很有效

将Id添加到进度控件

<div class="progress">
    <div class="progress-bar" runat="server" ID="ProgressBar" 
         aria-valuemax="100" aria-valuemin="0" role="progressbar">
    </div>
</div>
摆脱hiddenField和其他JS


我认为没有人会读这篇文章,因为这个问题相当冗长。但是我没有使用JQuery,而是简单地从后面使用代码,就成功地修复了所有问题

花了数小时试图解决这个问题,但解决方案只是设置div进度条的样式->宽度

aspx.cs中的代码:

    int countLogin = al.pieLogin(username);
    int countLogout = al.pieLogout(username);
    int countFailure = al.pieFailure(username);
    int countChangePW = al.pieChangePW(username);

    //If more than 20%, prompt Admin to perform actions.

    double overallPercentageFull = Math.Round((countFailure * 100.0) / (countFailure + countLogin), 1);

    Lbl_PercentageCheck.InnerText = overallPercentageFull.ToString() + "%";
    ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
    ProgressBarDiv.Attributes.Add("aria-valuenow", overallPercentageFull.ToString());

    if (overallPercentageFull < 15.0)
    {
        Lbl_PercentageCheck.Style.Add("ForeColor", "green");

    }
    else if (overallPercentageFull >= 15.0)
    {
        Lbl_PercentageCheck.Style.Add("ForeColor", "red");
    }
网络表单中的代码:

<div class="col-md-12">
    <div class="skills-wrapper wow animated bounceIn animated animated" data-wow-delay="0.2s" style="visibility: visible; animation-delay: 0.2s; animation-name: bounceIn;">
        <h3 class="heading-progress">Login & Login Failures (%) <span class="pull-right" runat="server" id="Lbl_PercentageCheck"></span></h3>
           <div class="progress">
               <div class="progress-bar" aria-valuemax="100" aria-valuemin="0" style="width: 0%" runat="server" id="ProgressBarDiv" role="progressbar">
               </div>
            </div>         
    </div>
最后,

这不是答案。这是对@domster代码的响应

已尝试解决方案,但无法使其工作。这是我的html:

 <div>
     <h3 class="heading-progress">Progress(%) <span class="pull-right" runat="server" id="Lbl_PercentageCheck"></span></h3>
     <div class="progress">
           <div class="progress-bar" aria-valuemax="100" aria-valuemin="0" style="width: 0%" runat="server" id="ProgressBarDiv" role="progressbar">
           </div>
        </div>   
 </div>
在代码隐藏中:

    protected void btnImport_ServerClick(object sender, EventArgs e)
    {
        HasUpload = true;

        for(int z = 1000;z < 3322;z++)
        {
            double overallPercentageFull = Math.Round((z * 100.0) / 3322, 1);
            Lbl_PercentageCheck.InnerText = overallPercentageFull.ToString() + "%";
            ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
            ProgressBarDiv.Attributes.Add("aria-valuenow", overallPercentageFull.ToString());
            if (overallPercentageFull < 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "green");

            }
            else if (overallPercentageFull >= 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "red");
            }
            Thread.Sleep(200);
            Lbl_PercentageCheck.InnerText = overallPercentageFull.ToString() + "%";
            ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
            ProgressBarDiv.Attributes.Add("aria-valuenow", overallPercentageFull.ToString());

            if (overallPercentageFull < 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "green");

            }
            else if (overallPercentageFull >= 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "red");
            }
        }

它会在最后更新一次栏。我甚至试着把它放在一个更新面板中。

你在脚本代码之前添加了jQuery库吗?@AlivetoDie我刚从nuget软件包中添加了它,但这次我得到了0%…我下载了jQuery库并将它添加到我的母版页以及我的进度条和脚本所在的页面中,但我得到了0%。在我的问题中,我在末尾添加了一张图片,它是9.5%,但现在显示为0%…我实际上将HiddenField分配给了一个double,然后是to字符串。我忘了把它添加到我的问题中,我现在就添加它。存储到HiddenField之前的数据类型实际上是双精度的。当它在HF中时,它将变成一个字符串,但我将它解析为一个浮点,这可能是问题吗?我确实在开始时尝试过,但它不起作用。。让我再试一次我实际上在pageload方法中调用了一个方法1,这个方法1包含了我在问题“codes Behind:”下发布的代码@domster我想我发现了你的问题。我也发现了问题Harrie。。!非常感谢你的帮助!!您的意思是,您只需使用codebehind而不使用JQuery就可以完成上述工作并进行更新?我从字面上复制了你的代码,在我的页面上没有更新。进度条永远不会改变。
ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
    int countLogin = al.pieLogin(username);
    int countLogout = al.pieLogout(username);
    int countFailure = al.pieFailure(username);
    int countChangePW = al.pieChangePW(username);

    //If more than 20%, prompt Admin to perform actions.

    double overallPercentageFull = Math.Round((countFailure * 100.0) / (countFailure + countLogin), 1);

    Lbl_PercentageCheck.InnerText = overallPercentageFull.ToString() + "%";
    ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
    ProgressBarDiv.Attributes.Add("aria-valuenow", overallPercentageFull.ToString());

    if (overallPercentageFull < 15.0)
    {
        Lbl_PercentageCheck.Style.Add("ForeColor", "green");

    }
    else if (overallPercentageFull >= 15.0)
    {
        Lbl_PercentageCheck.Style.Add("ForeColor", "red");
    }
<div class="col-md-12">
    <div class="skills-wrapper wow animated bounceIn animated animated" data-wow-delay="0.2s" style="visibility: visible; animation-delay: 0.2s; animation-name: bounceIn;">
        <h3 class="heading-progress">Login & Login Failures (%) <span class="pull-right" runat="server" id="Lbl_PercentageCheck"></span></h3>
           <div class="progress">
               <div class="progress-bar" aria-valuemax="100" aria-valuemin="0" style="width: 0%" runat="server" id="ProgressBarDiv" role="progressbar">
               </div>
            </div>         
    </div>
 <div>
     <h3 class="heading-progress">Progress(%) <span class="pull-right" runat="server" id="Lbl_PercentageCheck"></span></h3>
     <div class="progress">
           <div class="progress-bar" aria-valuemax="100" aria-valuemin="0" style="width: 0%" runat="server" id="ProgressBarDiv" role="progressbar">
           </div>
        </div>   
 </div>
    protected void btnImport_ServerClick(object sender, EventArgs e)
    {
        HasUpload = true;

        for(int z = 1000;z < 3322;z++)
        {
            double overallPercentageFull = Math.Round((z * 100.0) / 3322, 1);
            Lbl_PercentageCheck.InnerText = overallPercentageFull.ToString() + "%";
            ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
            ProgressBarDiv.Attributes.Add("aria-valuenow", overallPercentageFull.ToString());
            if (overallPercentageFull < 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "green");

            }
            else if (overallPercentageFull >= 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "red");
            }
            Thread.Sleep(200);
            Lbl_PercentageCheck.InnerText = overallPercentageFull.ToString() + "%";
            ProgressBarDiv.Style.Add("width", (overallPercentageFull).ToString() + "%");
            ProgressBarDiv.Attributes.Add("aria-valuenow", overallPercentageFull.ToString());

            if (overallPercentageFull < 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "green");

            }
            else if (overallPercentageFull >= 15.0)
            {
                Lbl_PercentageCheck.Style.Add("ForeColor", "red");
            }
        }