如何在我的程序上应用localStorage或javascript cookie?

如何在我的程序上应用localStorage或javascript cookie?,javascript,jquery,html,Javascript,Jquery,Html,我研究了一些关于本地存储和javascript cookies的网站,并尝试应用它,但运气不好,它总是不起作用。我想在我的作业上应用localStorage或javascript cookies。一个简单的预订主题。我希望浏览器记住我在浏览器中所做的更改 Javascript: <script type="text/javascript"> var availableSlot1 = 5; var reduceSlot1 = function(value

我研究了一些关于本地存储和javascript cookies的网站,并尝试应用它,但运气不好,它总是不起作用。我想在我的作业上应用localStorage或javascript cookies。一个简单的预订主题。我希望浏览器记住我在浏览器中所做的更改

Javascript:

<script type="text/javascript">
        var availableSlot1 = 5;
        var reduceSlot1 = function(valueToDeduct1){
            availableSlot1 = availableSlot1 - valueToDeduct1;
            document.getElementById('ite164').innerHTML = availableSlot1;
            if (availableSlot1 == 0){
                document.getElementById('ite164').innerHTML = "FULL";
                document.getElementById("ite164").style.color = "red";
                document.getElementById("number1").style.color = "red";
                document.getElementById("subject1").style.color = "red";
                document.getElementById("code1").style.color = "red";
                document.getElementById("units1").style.color = "red";
                document.getElementById("prof1").style.color = "red";
                document.getElementById("1").style.display = "none";
            }
        };
        var availableSlot2 = 5;
        var reduceSlot2 = function(valueToDeduct2){
            availableSlot2 = availableSlot2 - valueToDeduct2;
            document.getElementById('phi001').innerHTML = availableSlot2;
            if (availableSlot2 == 0){
                document.getElementById('phi001').innerHTML = "FULL";
                document.getElementById("phi001").style.color = "red";
                document.getElementById("number2").style.color = "red";
                document.getElementById("subject2").style.color = "red";
                document.getElementById("code2").style.color = "red";
                document.getElementById("units2").style.color = "red";
                document.getElementById("prof2").style.color = "red";
                document.getElementById("2").style.display = "none";
            }
        };
        var availableSlot3 = 5;
        var reduceSlot3 = function(valueToDeduct3){
            availableSlot3 = availableSlot3 - valueToDeduct3;
            document.getElementById('ite165').innerHTML = availableSlot3;
            if (availableSlot3 == 0){
                document.getElementById('ite165').innerHTML = "FULL";
                document.getElementById("ite165").style.color = "red";
                document.getElementById("number3").style.color = "red";
                document.getElementById("subject3").style.color = "red";
                document.getElementById("code3").style.color = "red";
                document.getElementById("units3").style.color = "red";
                document.getElementById("prof3").style.color = "red";
                document.getElementById("3").style.display = "none";
            }
        };
        var availableSlot4 = 5;
        var reduceSlot4 = function(valueToDeduct4){
            availableSlot4 = availableSlot4 - valueToDeduct4;
            document.getElementById('ite048').innerHTML = availableSlot4;
            if (availableSlot4 == 0){
                document.getElementById('ite048').innerHTML = "FULL";
                document.getElementById("ite048").style.color = "red";
                document.getElementById("number4").style.color = "red";
                document.getElementById("subject4").style.color = "red";
                document.getElementById("code4").style.color = "red";
                document.getElementById("units4").style.color = "red";
                document.getElementById("prof4").style.color = "red";
                document.getElementById("4").style.display = "none";
            }
        };
        var availableSlot5 = 5;
        var reduceSlot5 = function(valueToDeduct5){
            availableSlot5 = availableSlot5 - valueToDeduct5;
            document.getElementById('ite136').innerHTML = availableSlot5;
            if (availableSlot5 == 0){
                document.getElementById('ite136').innerHTML = "FULL";
                document.getElementById("ite136").style.color = "red";
                document.getElementById("number5").style.color = "red";
                document.getElementById("subject5").style.color = "red";
                document.getElementById("code5").style.color = "red";
                document.getElementById("units5").style.color = "red";
                document.getElementById("prof5").style.color = "red";
                document.getElementById("5").style.display = "none";
            }
        };

var availableSlot1=5;
var reduceSlot1=函数(valueToDecet1){
availableSlot1=availableSlot1-ValueToDecis1;
document.getElementById('ite164')。innerHTML=availableSlot1;
如果(availableSlot1==0){
document.getElementById('ite164').innerHTML=“FULL”;
document.getElementById(“ite164”).style.color=“红色”;
document.getElementById(“number1”).style.color=“红色”;
document.getElementById(“主题1”).style.color=“红色”;
document.getElementById(“code1”).style.color=“红色”;
document.getElementById(“units1”).style.color=“红色”;
document.getElementById(“prof1”).style.color=“红色”;
document.getElementById(“1”).style.display=“无”;
}
};
var availableSlot2=5;
var reduceSlot2=函数(valueToDecrest2){
availableSlot2=availableSlot2-ValueToDecis2;
document.getElementById('phi001')。innerHTML=availableSlot2;
如果(availableSlot2==0){
document.getElementById('phi001').innerHTML=“FULL”;
document.getElementById(“phi001”).style.color=“红色”;
document.getElementById(“number2”).style.color=“红色”;
document.getElementById(“subject2”).style.color=“红色”;
document.getElementById(“code2”).style.color=“红色”;
document.getElementById(“units2”).style.color=“红色”;
document.getElementById(“prof2”).style.color=“红色”;
document.getElementById(“2”).style.display=“无”;
}
};
var availableSlot3=5;
var reduceSlot3=函数(ValueToDecet3){
availableSlot3=availableSlot3-ValueToDecrest3;
document.getElementById('ite165')。innerHTML=availableSlot3;
如果(availableSlot3==0){
document.getElementById('ite165').innerHTML=“FULL”;
document.getElementById(“ite165”).style.color=“红色”;
document.getElementById(“number3”).style.color=“红色”;
document.getElementById(“subject3”).style.color=“红色”;
document.getElementById(“code3”).style.color=“红色”;
document.getElementById(“units3”).style.color=“红色”;
document.getElementById(“prof3”).style.color=“红色”;
document.getElementById(“3”).style.display=“无”;
}
};
var availableSlot4=5;
var reduceSlot4=函数(ValueToDece4){
availableSlot4=availableSlot4-ValueToDeced4;
document.getElementById('ite048')。innerHTML=availableSlot4;
如果(availableSlot4==0){
document.getElementById('ite048').innerHTML=“FULL”;
document.getElementById(“ite048”).style.color=“红色”;
document.getElementById(“number4”).style.color=“红色”;
document.getElementById(“主题4”).style.color=“红色”;
document.getElementById(“code4”).style.color=“红色”;
document.getElementById(“units4”).style.color=“红色”;
document.getElementById(“prof4”).style.color=“红色”;
document.getElementById(“4”).style.display=“无”;
}
};
var availableSlot5=5;
var reduceSlot5=函数(valueToDecrest5){
availableSlot5=availableSlot5-要删除的值5;
document.getElementById('ite136')。innerHTML=availableSlot5;
如果(availableSlot5==0){
document.getElementById('ite136').innerHTML=“FULL”;
document.getElementById(“ite136”).style.color=“红色”;
document.getElementById(“number5”).style.color=“红色”;
document.getElementById(“subject5”).style.color=“红色”;
document.getElementById(“code5”).style.color=“红色”;
document.getElementById(“units5”).style.color=“红色”;
document.getElementById(“prof5”).style.color=“红色”;
document.getElementById(“5”).style.display=“无”;
}
};
Jquery:

<script>
$(document).ready(function(){
            $("#button1").hide();
            $("#button2").hide();
            $("#button3").hide();
            $("#button4").hide();
            $("#button5").hide();
            $("#button6").hide();
            $("#button7").hide();
            $("#1").click(function(){
                $("#button1").show();
                $("#button1").fadeIn(1000);
                $("#button2").hide();
                $("#button3").hide();
                $("#button4").hide();
                $("#button5").hide();
                $("#button6").hide();
                $("#button7").hide();
                    $("#button1").click(function() {
                        $("#button1").hide();
                    });
              });
              $("#2").click(function(){
                $("#button1").hide();
                $("#button2").show();
                $("#button2").fadeIn(1000);
                $("#button3").hide();
                $("#button4").hide();
                $("#button5").hide();
                $("#button6").hide();
                $("#button7").hide();
                    $("#button2").click(function() {
                        $("#button2").hide();
                    });
              });
              $("#3").click(function(){
                $("#button1").hide();
                $("#button2").hide();
                $("#button3").show();
                $("#button3").fadeIn(1000);
                $("#button4").hide();
                $("#button5").hide();
                $("#button6").hide();
                $("#button7").hide();
                    $("#button3").click(function() {
                        $("#button3").hide();
                    });
              });
              $("#4").click(function(){
                $("#button1").hide();
                $("#button2").hide();
                $("#button3").hide();
                $("#button4").show();
                $("#button4").fadeIn(1000);
                $("#button5").hide();
                $("#button6").hide();
                $("#button7").hide();
                    $("#button4").click(function() {
                        $("#button4").hide();
                    });
              });
              $("#5").click(function(){
                $("#button1").hide();
                $("#button2").hide();
                $("#button3").hide();
                $("#button4").hide();
                $("#button5").show();
                $("#button5").fadeIn(1000);
                $("#button6").hide();
                $("#button7").hide();
                    $("#button5").click(function() {
                        $("#button5").hide();
                    });
              });
              $("#6").click(function(){
                $("#button1").hide();
                $("#button2").hide();
                $("#button3").hide();
                $("#button4").hide();
                $("#button5").hide();
                $("#button6").show();
                $("#button6").fadeIn(1000);
                $("#button7").hide();
                    $("#button6").click(function() {
                        $("#button6").hide();
                    });
              });
              $("#7").click(function(){
                $("#button1").hide();
                $("#button2").hide();
                $("#button3").hide();
                $("#button4").hide();
                $("#button5").hide();
                $("#button6").hide();
                $("#button7").show();
                $("#button7").fadeIn(1000);
                    $("#button7").click(function() {
                        $("#button7").hide();
                    });
              });
        });
</script>

$(文档).ready(函数(){
$(“#按钮1”).hide();
$(“#按钮2”).hide();
$(“#按钮3”).hide();
$(“#按钮4”).hide();
$(“#按钮5”).hide();
$(“#按钮6”).hide();
$(“#按钮7”).hide();
$(“#1”)。单击(函数(){
$(“#按钮1”).show();
$(“#按钮1”)。法代因(1000);
$(“#按钮2”).hide();
$(“#按钮3”).hide();
$(“#按钮4”).hide();
$(“#按钮5”).hide();
$(“#按钮6”).hide();
$(“#按钮7”).hide();
$(“#按钮1”)。单击(函数(){
$(“#按钮1”).hide();
});
});
$(“#2”)。单击(函数(){
$(“#按钮1”).hide();
$(“#按钮2”).show();
$(“#按钮2”).fadeIn(1000);
$(“#按钮3”).hide();
$(“#按钮4”).hide();
$(“#按钮5”).hide();
$(“#按钮6”).hide();
$(“#按钮7”).hide();
$(“#按钮2”)。单击(函数(){
$(“#按钮2”).hide();
});
});
$(“#3”)。单击(函数(){
$(“#按钮1”)。隐藏
<table border="1" width="700px">
        <tr>
            <th>#</th>
            <th>Subjects</th>
            <th>Subject Code</th>
            <th>Units</th>
            <th>Instructor</th>
            <th>Available Slots</th>
        </tr>
        <tr>
            <td class="center" id="number1">1</td>
            <td id="subject1">Data Comm. Systems & Networking</td>
            <td class="center" id="code1">ITE164</td>
            <td class="center" id="units1">3.0</td>
            <td id="prof1">Quinito, Floreto Jr. R.</td>
            <td style="text-align: center;"><span id="ite164">5</span></td>
        </tr>
        <tr>
            <td class="center" id="number2">2</td>
            <td id="subject2">Introduction to Philosophy and Logic</td>
            <td class="center" id="code2">PHI001</td>
            <td class="center" id="units2">3.0</td>
            <td id="prof2">Chiong, Isidro R.</td>
            <td style="text-align: center;"><span id="phi001">5</span></td>
        </tr>
        <tr>
            <td class="center" id="number3">3</td>
            <td id="subject3">Basic Finance & Acctg. Principles for IT</td>
            <td class="center" id="code3">ITE165</td>
            <td class="center" id="units3">3.0</td>
            <td id="prof3">Cadelinia, Godofredo B.</td>
            <td style="text-align: center;"><span id="ite165">5</span></td>
        </tr>
        <tr>
            <td class="center" id="number4">4</td>
            <td id="subject4">Discrete Structures</td>
            <td class="center" id="code4">ITE048</td>
            <td class="center" id="units4">3.0</td>
            <td id="prof4">Calibara, Eunelfa Regie F.</td>
            <td style="text-align: center;"><span id="ite048">5</span></td>
        </tr>
        <tr>
            <td class="center" id="number5">5</td>
            <td id="subject5">Web Page Design</td>
            <td class="center" id="code5">ITE136</td>
            <td class="center" id="units5">3.0</td>
            <td id="prof5">Pequiro, Chemby Mae S.</td>
            <td style="text-align: center;"><span id="ite136">5</span></td>
        </tr>
        <tr>
            <td class="center" id="number6">6</td>
            <td id="subject6">Systems Analysis and Design</td>
            <td class="center" id="code6">ITE062</td>
            <td class="center" id="units6">3.0</td>
            <td id="prof6">Galudo, Darwin M.</td>
            <td style="text-align: center;"><span id="ite062">5</span></td>
        </tr>
        <tr>
            <td class="center" id="number7">7</td>
            <td id="subject7">Operating System</td>
            <td class="center" id="code7">ITE076</td>
            <td class="center" id="units7">3.0</td>
            <td id="prof7">Lagala, Glenn T.</td>
            <td style="text-align: center;"><span id="ite076">5</span></td>
        </tr>
    </table>
    <div id="combobox">
        <span style="color: white;">Select a subject to reserve:</span>
        <select>
          <option id="1" value="ITE164">Data Comm. Systems & Networking (ITE164)</option>
          <option id="2" value="PHI001">Introduction to Philosophy and Logic (PHI001)</option>
          <option id="3" value="ITE165">Basic Finance & Acctg. Principles for IT (ITE165)</option>
          <option id="4" value="ITE048">Discrete Structures (ITE048)</option>
          <option id="5" value="ITE136">Web Page Design (ITE136)</option>
          <option id="6" value="ITE062">Systems Analysis and Design (ITE062)</option>
           <option id="7" value="ITE076">Operating System (ITE076)</option>
        </select> 
         <a href="javascript:reduceSlot1(1)" id="button1"><input type="button" value="Reserve"></a>
         <a href="javascript:reduceSlot2(1)" id="button2"><input type="button" value="Reserve"></a>
         <a href="javascript:reduceSlot3(1)" id="button3"><input type="button" value="Reserve"></a>
         <a href="javascript:reduceSlot4(1)" id="button4"><input type="button" value="Reserve"></a>
         <a href="javascript:reduceSlot5(1)" id="button5"><input type="button" value="Reserve"></a>
         <a href="javascript:reduceSlot6(1)" id="button6"><input type="button" value="Reserve"></a>
         <a href="javascript:reduceSlot7(1)" id="button7"><input type="button" value="Reserve"></a>
    </div>
window.localStorage["button1_is_showing"] = true;
window.localstorage.button1_is_showing = true;
var b1showing;
if (window.localStorage.button1_is_showing == "true") {
    b1showing = true;
}
else {
    b1showing = false;
}
var b1showing = JSON.parse(window.localStorage.button1_is_showing);
delete window.localStorage.b1showing;
<table id="slotTable" border="1" width="700px">
        <tr>
            <th>#</th>
            <th>Subjects</th>
            <th>Subject Code</th>
            <th>Units</th>
            <th>Instructor</th>
            <th>Available Slots</th>
        </tr>
        <tr  >
            <td class="center" id="number1">1</td>
            <td id="subject1">Data Comm. Systems & Networking</td>
            <td class="center" id="code1">ITE164</td>
            <td class="center" id="units1">3.0</td>
            <td id="prof1">Quinito, Floreto Jr. R.</td>
            <td style="text-align: center;">5</td>
        </tr>
        <tr>
            <td class="center" id="number2">2</td>
            <td id="subject2">Introduction to Philosophy and Logic</td>
            <td class="center" id="code2">PHI001</td>
            <td class="center" id="units2">3.0</td>
            <td id="prof2">Chiong, Isidro R.</td>
            <td style="text-align: center;">5</td>
        </tr>
        <tr>
            <td class="center" id="number3">3</td>
            <td id="subject3">Basic Finance & Acctg. Principles for IT</td>
            <td class="center" id="code3">ITE165</td>
            <td class="center" id="units3">3.0</td>
            <td id="prof3">Cadelinia, Godofredo B.</td>
            <td style="text-align: center;">5</td>
        </tr>
        <tr>
            <td class="center" id="number4">4</td>
            <td id="subject4">Discrete Structures</td>
            <td class="center" id="code4">ITE048</td>
            <td class="center" id="units4">3.0</td>
            <td id="prof4">Calibara, Eunelfa Regie F.</td>
            <td style="text-align: center;">5</td>
        </tr>
        <tr>
            <td class="center" id="number5">5</td>
            <td id="subject5">Web Page Design</td>
            <td class="center" id="code5">ITE136</td>
            <td class="center" id="units5">3.0</td>
            <td id="prof5">Pequiro, Chemby Mae S.</td>
            <td style="text-align: center;">5</td>
        </tr>
        <tr>
            <td class="center" id="number6">6</td>
            <td id="subject6">Systems Analysis and Design</td>
            <td class="center" id="code6">ITE062</td>
            <td class="center" id="units6">3.0</td>
            <td id="prof6">Galudo, Darwin M.</td>
            <td style="text-align: center;">5</td>
        </tr>
        <tr>
            <td class="center" id="number7">7</td>
            <td id="subject7">Operating System</td>
            <td class="center" id="code7">ITE076</td>
            <td class="center" id="units7">3.0</td>
            <td id="prof7">Lagala, Glenn T.</td>
            <td style="text-align: center;"><span id="ite076">5</span></td>
        </tr>
    </table>
    <div id="combobox">
        <span style="color: white;">Select a subject to reserve:</span>

        <select onchange="updateCurrentSlot(this.value)" >
          <option id="1" value="ITE164">Data Comm. Systems & Networking (ITE164)</option>
          <option id="2" value="PHI001">Introduction to Philosophy and Logic (PHI001)</option>
          <option id="3" value="ITE165">Basic Finance & Acctg. Principles for IT (ITE165)</option>
          <option id="4" value="ITE048">Discrete Structures (ITE048)</option>
          <option id="5" value="ITE136">Web Page Design (ITE136)</option>
          <option id="6" value="ITE062">Systems Analysis and Design (ITE062)</option>
          <option id="7" value="ITE076">Operating System (ITE076)</option>
        </select> 

         <a href="javascript:reduceSlot(1)"  id="button"><input type="button" value="Reserve"></a>
    </div>
<script>
    // the currentSlot holds which slot is being seleted..
var currentSlot = 0 ; 

// check if data is already stored in the localStorage.. if not create a new one..
if (!localStorage.slots) { 
var slots = [
{'slotId' : 0 , 'slotVal' : 'ITE164' ,'availableSlot' : 5 },
{'slotId' : 1 , 'slotVal' : 'PHI001' ,'availableSlot' : 5 },
{'slotId' : 2 , 'slotVal' : 'ITE165' ,'availableSlot' : 5 },
{'slotId' : 3 , 'slotVal' : 'ITE048' ,'availableSlot' : 5 },
{'slotId' : 4 , 'slotVal' : 'ITE136' ,'availableSlot' : 5 },
{'slotId' : 5 , 'slotVal' : 'ITE062' ,'availableSlot' : 5 },
{'slotId' : 6 , 'slotVal' : 'ITE076' ,'availableSlot' : 5 }
] ;
}

else if( localStorage.slots) {
$(document).ready(function () {

slots = JSON.parse(localStorage.slots) ;
// update the slots accordig to the locally stored data

$("#slotTable tr").each(function(index) {     
if(index >=1 ) { // index 0 will be <th> 

// as 6th child of tr contains available slot.. 
$(this).find(':nth-child(6)').text(slots[index-1].availableSlot) ;

// checking if slots are full.. 
if(slots[index-1].availableSlot === 0 ) { $(this).find('td').css({'color' : 'red'}) ;
$(this).find(':nth-child(6)').text("Full") ;
}
}

});  
}) ;
}


// function to reduce the current selected slot.. 
function reduceSlot(reduceAmt) {

// if availableSlot is 1.. and is reduced.. it will be full.. 
if (slots[currentSlot].availableSlot == 1 ) {

// setting the requred stuff.. 
$("#slotTable tr").each(function(index) { 
if(index == currentSlot+1) { 
$(this).find('td').css({'color' : 'red'});
$(this).find(':nth-child(6)').text("Full") ; 
slots[currentSlot].availableSlot = 0 ;
}
});
}

// we have to reduce slot and update our 'slots' variable as well as the table data
else if (slots[currentSlot].availableSlot > 1) { 
slots[currentSlot].availableSlot = slots[currentSlot].availableSlot - reduceAmt ;
$("#slotTable tr").each(function(index) { 
if(index == currentSlot+ 1) $(this).find(':nth-child(6)').text(slots[currentSlot].availableSlot) ; 
}); 

}

// save data in localStorage
localStorage.slots = JSON.stringify(slots) ;

}

// when the option in select changes..  we have to update our currentSlot variable.
function updateCurrentSlot(sVal) { 
for(i=0;i<slots.length;i++) {
if(slots[i].slotVal === sVal) currentSlot = slots[i].slotId ;
}
}

</script>