【发布时间】:2014-10-29 05:56:31
【问题描述】:
我正在开发一个网页,该网页会提取用户分数并将该分数计入一个百分比。然后使用该百分比填充 Bootstrap 进度条,使用宽度和 aria-valuenow。
问题是在初始构建和页面刷新后,进度条宽度(也就是分数)会按原始分数增长。例如,如果百分比从 40 开始,它将刷新为 80...120...160...等。
这是我分配值的 C# 代码:
private static string[][] matches = new string[numOfGames][];
private static string[] winningTeams = new string[numOfGames];
protected static string[,] players = { { "Name", "0" }, { "Name", "0" }, { "Name", "0" }, { "Name", "0" }, { "Name", "0" }, { "Name", "0" }, { "Name", "0" }, { "Name", "0" }, { "Name", "0" } };
public static double score_name1, score_name2, score_name3, score_name4, score_name5, score_name6, score_name7, score_name8, score_name9;
protected void Page_Load(object sender, EventArgs e) {
gatherMatches();
DataTable userPicks = getGSheetData();
userPicks.Columns.Remove( "Timestamp" );
userPicks.Columns.Remove( "Your Name" );
convertTeamNames();
compareMatches();
generateUserScores( userPicks );
score_name1 = Convert.ToDouble( players[0, 1] ) / numOfGames * 100.00;
score_name2 = Convert.ToDouble( players[1, 1] ) / numOfGames * 100.00;
score_name3 = Convert.ToDouble( players[2, 1] ) / numOfGames * 100.00;
score_name4 = Convert.ToDouble( players[3, 1] ) / numOfGames * 100.00;
score_name5 = Convert.ToDouble( players[4, 1] ) / numOfGames * 100.00;
score_name6 = Convert.ToDouble( players[5, 1] ) / numOfGames * 100.00;
score_name7 = Convert.ToDouble( players[6, 1] ) / numOfGames * 100.00;
score_name8 = Convert.ToDouble( players[7, 1] ) / numOfGames * 100.00;
score_name9 = Convert.ToDouble( players[8, 1] ) / numOfGames * 100.00;
name2.Attributes.Add( "style", "width: " + score_name2.ToString() + "%" );
name2.Attributes.Add( "aria-valuenow", players[0, 1].ToString() );
}
为了举例,替换了实际的名称值。
在 ASPX 页面中:
<%@ Page Title="Scoreboard" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Scoreboard.aspx.cs" Inherits="Football.Scoreboard" %>
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<div class="page-header">
<h2><%: Title %></h2>
<h3>See up to date standings.</h3>
</div>
<p>This page can be refreshed during game time to see changes in leaders as they happen.</p>
<div class="row">
<div class="col-md-6">
<h3>This Week</h3>
<div class="progress">
<div id="name1" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="5" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Name
</div>
</div>
<div class="progress">
<div id="name2" runat="server" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="16">
Name
</div>
</div>
<div class="progress">
<div id="name3" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="4" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Name
</div>
</div>
<div class="progress">
<div id="name4" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="3" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Jen
</div>
</div>
<div class="progress">
<div id="name5" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="1" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Name
</div>
</div>
<div class="progress">
<div id="name6" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Name
</div>
</div>
<div class="progress">
<div id="name7" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Ryan
</div>
</div>
<div class="progress">
<div id="name8" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Name
</div>
</div>
<div class="progress">
<div id="name9" class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="16" style="width: 0%">
Name
</div>
</div>
</div>
我只将动作应用到第二个进度条,因为其他的目前没有数据。
【问题讨论】:
-
提供更多与页面相关的代码...这里没有足够的信息来推断问题。
-
你的意思是更多来自aspx页面还是cs页面?
标签: javascript c# css asp.net