Saving bgColor to a Cookie
I'm working on my last JavaScript project for school and have encountered a few problems. My teacher seems to be MIA so any help would be greatly appreciated. The two issues that I'm having with this script are:
- The cookies only work in Internet Explorer;
- I can't figure out the code to save the 3rd text input field as a cookie that will automatically change the background color to the user's fav color.
Thoughts?
Code:
<html>
<head>
<title>Exercice 07</title>
<script language="javascript">
<!-- Début
//Valider formulaire
function valider(){
var bgColor = document.testform.Couleur.value;
document.bgColor = bgColor;
if (document.testform.Prenom.value=="") {
alert("S.V.P. indiquez votre prénom!")
return false;
}
if (document.testform.Nom.value=="") {
alert("S.V.P. indiquez votre nom de famille!")
return false;
}
if (document.testform.Couleur.value=="") {
alert("S.V.P. indiquez votre couleur préféré!")
return false;
}
var inputField = document.getElementById("Couleur").value.substr(1);
if (!/^[a-f0-9]{3}$|^[a-f0-9]{6}$/i.test(inputField))
{
alert("Vous devez indiquez une valeur hexidécimale!");
}
return true;
}
function set_it() {
var inputFieldP = document.getElementById("Prenom").value
var inputFieldN = document.getElementById("Nom").value
var thetext="greeting=Bonjour, "+inputFieldP +" " +inputFieldN +",";
var expdate=";expires=Mon, 30 Mar 2020 13:00:00 UTC";
var newtext=escape(thetext);
newtex+=expdate;
document.cookie=newtext
}
function read_it() {
var mycookie =document.cookie;
var fixed_cookie = unescape(mycookie);
var thepairs = fixed_cookie.split(";");
var namepairs= thepairs[0].split("=");
var greet= namepairs[1];
document.write(greet);
}
if (document.cookie) {
read_it();
}
else {
set_it();
}
// Fin -->
</script>
</head>
<body>
<script language="javascript">
//Message de bienvenue en fonction de l'heure
var heure=new Date().getHours()
var msg=""
if (heure<=6) {msg="bonne nuit"}
if (heure>6 && heure<=12) {msg="bon matin"}
if (heure>12 && heure<=18) {msg="bonne après-midi"}
if (heure>18 && heure<=24) {msg="bonne soirée"}
document.write(msg +"!");
</script>
<h2>Préférences usager:</h2>
<form name="testform" >
Prénom: <input size="30" id="Prenom" value="Visiteur" onblur="valider()" type="text"><br>
Nom: <input size="30" id="Nom" value="Inconnu" valider()" type="text"><br>
Couleur préféré: <input size="30" id="Couleur" value="#FFFFFF" onblur="valider()" maxlength="7" type="text"><br>
<input value="Sauvegarder" type="button" onClick="set_it()">
<input value="Visualiser" type="button" onClick="window.location.reload()">
</form>
</body>
</html>