Compte à rebours ne marche pas, js et c#
Tout d'abord voici mon code C# (Default.aspx.cs) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| protected void submit_Click(object sender, EventArgs e)
{
int nb_attacks = 4;
if (nb_attacks > 0)
{
Attack_show_zone.Visible = true;
for (int i = 0; i < nb_attacks; i++)
{
int time_left = 548;
TableRow row = new TableRow();
row.ID = "row" + i;
TableCell cell1 = new TableCell();
TableCell cell2 = new TableCell();
TableCell cell3 = new TableCell();
cell1.ID = "cell" + i + "_1";
cell1.Text = target.Text;
cell2.ID = "cell" + i + "_2";
cell2.Text = Quick_attack_type.Text;
cell3.ID = "cell" + i + "_3";
cell3.Text = "<script type=\"text/javascript\">countdown(" + time_left + ", " + i + ");</script>";
row.Cells.Add(cell1);
row.Cells.Add(cell2);
row.Cells.Add(cell3);
Attack_show_zone.Rows.Add(row);
}
}
} |
Et le javascript de Default.aspx :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <script type="text/javascript">
function countdown(left, num) {
if (left > 0) {
var h = Math.floor(left / 3600);
var m = Math.floor(((left / 3600) - Math.floor(left / 3600)) * 60);
var s = left - ((Math.floor(left / 60)) * 60);
var cell = "cell" + num + "_3";
document.getElementById(cell).InnerHTML = h + " : " + m + " : " + s;
var good = left - 1;
window.setTimeout("countdown("+good+", "+num+")", 1);
}
else { document.getElementById(cell).InnerHTML = '<font style="font-weight: bold; font-family: Verdana; color: #FF0000;">Finished</font>'; }
}
</script> |
Et le table :
Code:
1 2 3 4 5 6 7 8
| <div id="content">
<asp:Table ID="Attack_show_zone" Visible="false" runat="server">
<asp:TableHeaderRow runat="server">
<asp:TableHeaderCell ID="Target_Head_Cell" Text="Target" runat="server" />
<asp:TableHeaderCell ID="Attack_Type_Head_Cell" Text="Attack Type" runat="server" />
<asp:TableHeaderCell ID="Time_Left_Head_Cell" Text="Time Left" runat="server" />
</asp:TableHeaderRow>
</asp:Table> |
L'erreur de firebug est :
document.getElementById(cell) has no properties
[Break on this error] else { document.getElementById(cell).InnerHTML = '<font style="font-weight: ...
Merci beaucoup d'avance !