Salut tous.
J'essaies de faire un petit exercice d'apprentissage.
Description de l'application:
Le but de ma page est de rentrer un chiffre dans une textbox de valider par un bouton.
Ca déclenche un décomptage en .js (pour que les calculs se fassent coté client et ne pas surcharger le serveur).
Une fois le décomptage lancé la textebox et le bouton sont rendues inactives (pas de rechargement possible avant la fin du décompe)
Pendant tout le temps du décomptage une checkbox (visible ou non) est checked "True"
Arrivé à zéro la checkbox redevient checked "False".
Elle sert donc de témoin pour servir de stimuli à des udatepanel sur ses ticks. (par exemple)
PAr ailleurs, un label dit au client combien de temps (chiffre = 10 => 10 secondes) il reste.
Source / Exemple :
3 fichiers dans le zip.
Sur la page HTML, il y a:
<head runat="server">
<script type='text/javascript' language='javascript' src='compteur.js'></script>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<br />
Sur
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
secondes, il en reste
<asp:label runat="server" ID="message"></asp:label>
.<br />
<br />
<asp:CheckBox ID="temoin" runat="server" Visible="False" />
<br />
<br />
</div>
</form>
</body>
</html>
en evement sur la page il y a:
Public Partial Class WebForm3
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
End Sub
Protected Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As EventArgs) Handles TextBox1.TextChanged
TextBox1.Enabled = False
temoin.Checked = True
End Sub
Protected Sub temoin_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles temoin.CheckedChanged
If temoin.Checked = False Then
TextBox1.Enabled = True
End If
End Sub
End Class
En fichier compteur.js, il y a:
function transit_valeur() {
//teste si l'utilisateur a rempli le textbox par un nombre
if (document.getElementById("checkbox1").checked == true) && (!isNaN(getElementById("textbox1").text))
{
var recup = document.getElementById("textbox1").text;
document.getElementById("message").innerHTML = recup;
}
else
{tinc = setTimeout (transit_valeur(),1000)
};
}
function decremente (){
//recupère le chiffre, calcule et remet à jour toutes les secondes
var decompte = parseInt (document.getElementById("message").text)
if (decompte > 0)
{decompte --;}
document.getElementById("message").innerHTML = decompte;
// continue de décompter et arrrivé à 0 décheck la checkbox
if (decompte!=0)
{tinc = setTimeout (decremente(),1000);}
else{document.getElementById("checkbox1").innerHTML = False;}
}
transit_valeur();
decremente();
Conclusion :
Les problèmes doivent se situer dans:
- la façon de récupérer l'info de la textebox.
- la façon de mettre l'info dans le label.
- la facçon de checker la checkbox.
et une histoire de manque d'objet.
Si quelqu'un peut m'aider à y voire plus clair.
J'ai changé des codes mais j'ai rien trouvé de valable.
HELP plz pour le finaliser.
Merci à vous qui avez pris le temps de lire et/ou d'y répondre.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.