Probleme de javascript
Philou05
-
Marden -
Marden -
Voila le probleme je dois realiser un cookie pour un enccaissement et avec ce script ca marche presque mais il reprend par moment "fondecaisse=" a la place du cookie !
Est ce que quelqu'un peu m'aider a resoudre ce pb merci!!!
<html>
<!-- Date de création: 29/04/02 -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
//var fdc= 0
function AffCookie(){
var cook = document.cookie
var egal= cook.indexOf("=") //index de "=" dans le cookie
var pv = cook.indexOf (";") //index du ";" dans le cookie
cookvalue = cook.substring(egal+1,pv) //on prend la sous-chaine comprise entre le "=" et le ";" du cookie,c-a-dire sa valeur
//fdc=cookvalue
document.FondCaisse.FondCaisse.value=cookvalue//affiche la valeur du cookie
//alert(cookvalue)
//alert("fdc="+fdc)
}
function SauveCookie(value){
cook ="FondCaisse="+value+";" //creation du cookie de nom "FondCaisse" et de valeur saisie en paramètre
document.cookie=cook
}
</script>
</head>
<body onload="AffCookie()">
<form name="FondCaisse">
<input type="text" name="FondCaisse">Fond de caisse<br><br>
<input type="button" value="charge" onclick="AffCookie()">
<input type="button" value="sauve" onclick="SauveCookie(document.FondCaisse.FondCaisse.value)">
</form>
</body>
</html>
Est ce que quelqu'un peu m'aider a resoudre ce pb merci!!!
<html>
<!-- Date de création: 29/04/02 -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
//var fdc= 0
function AffCookie(){
var cook = document.cookie
var egal= cook.indexOf("=") //index de "=" dans le cookie
var pv = cook.indexOf (";") //index du ";" dans le cookie
cookvalue = cook.substring(egal+1,pv) //on prend la sous-chaine comprise entre le "=" et le ";" du cookie,c-a-dire sa valeur
//fdc=cookvalue
document.FondCaisse.FondCaisse.value=cookvalue//affiche la valeur du cookie
//alert(cookvalue)
//alert("fdc="+fdc)
}
function SauveCookie(value){
cook ="FondCaisse="+value+";" //creation du cookie de nom "FondCaisse" et de valeur saisie en paramètre
document.cookie=cook
}
</script>
</head>
<body onload="AffCookie()">
<form name="FondCaisse">
<input type="text" name="FondCaisse">Fond de caisse<br><br>
<input type="button" value="charge" onclick="AffCookie()">
<input type="button" value="sauve" onclick="SauveCookie(document.FondCaisse.FondCaisse.value)">
</form>
</body>
</html>
A voir également:
- Probleme de javascript
- Telecharger javascript - Télécharger - Langages
- A javascript error occurred in the main process - Forum Windows
- Afficher un tableau javascript en html ✓ - Forum Javascript
- Javascript arrondi - Forum Javascript
- Javascript arrondi après la virgule ✓ - Forum Windows
2 réponses
vi g trouvé
tu utilises mal la fonction substring, ou alors c pas la bonne fonction
si tu remplaces ton "egal+1" par "egal-1", tu verras que tu obtiens
"FondCaiss"
donc ta fonction substring récupère la chaine à partir du début jusqu'au "égal+1"
Cherche dans tes doc si c la bonne fonction et si oui, comment lui indiquer à quel caractère commencer.
tu utilises mal la fonction substring, ou alors c pas la bonne fonction
si tu remplaces ton "egal+1" par "egal-1", tu verras que tu obtiens
"FondCaiss"
donc ta fonction substring récupère la chaine à partir du début jusqu'au "égal+1"
Cherche dans tes doc si c la bonne fonction et si oui, comment lui indiquer à quel caractère commencer.
Mes essais avec ton code semblent indiquer que le ";" final n'est pas relu (la fonction substring retourne -1, ce qui inverse les index de début/fin de chaîne). Pour quelle raison ?
Les "trucs & astuces" rencontrés ne sont guère bavards sur le mode d'écriture/lecture des cookies. Je ne les ai pas tous détaillés. Dans certains cas, j'ai vu qu'on y employait les fonctions "escape/unescape", ce qui semblerait indiquer qu'il y des caractères de service (le ";" serait une fin d'instruction ?) à masquer, ce qui n'est pas ton cas.
Les "trucs & astuces" rencontrés ne sont guère bavards sur le mode d'écriture/lecture des cookies. Je ne les ai pas tous détaillés. Dans certains cas, j'ai vu qu'on y employait les fonctions "escape/unescape", ce qui semblerait indiquer qu'il y des caractères de service (le ";" serait une fin d'instruction ?) à masquer, ce qui n'est pas ton cas.