2017-03-31 7 views
0

私は3つの異なるクッキーがあり、ボタンをクリックして金額を追加し、別のボタンでクッキーの値をクリアすることができます。ウェブサイトはクッキーに値を格納する必要がありますが、ページをロードするときには定義されていません。私はそれが働くために最初にクリアをクリックする必要があります。私はページをロードするときに、どのようにデフォルト値を0にすることができますか? ご協力いただきありがとうございます。ありがとう!クッキーjsページの負荷で未定義の値を取得する

 function increase3(){ 

       Cookies.get("amountsz"); 

      var numbers = document.getElementById('hz').innerHTML; 
       numbers++; 
       document.getElementById('hz').innerHTML= numbers; 
       Cookies.set("named",numbers); 
       // 
       document.getElementById('hz').innerHTML=Cookies.get("named",numbers); 


       } 

     function increase2(){ 

       Cookies.get("amounts"); 

      var number = document.getElementById('hd').innerHTML; 
      number++; 
        document.getElementById('hd').innerHTML= number; 
        Cookies.set("names",number); 
       // 
        document.getElementById('hd').innerHTML=Cookies.get("names",number); 


       } 

var values; 

var h=document.getElementById("hs"); 

function dd(){ 
Cookies.get("amount"); 

    document.getElementById("hs").innerHTML='0'; 
var values=0; 

     Cookies.set("name",values); 
     document.getElementById('hs').innerHTML=Cookies.get("name",values); 

} 

function dd2(){ 
Cookies.get("amounts"); 

    document.getElementById("hd").innerHTML='0'; 
var number=0; 

     Cookies.set("names",number); 
     document.getElementById('hs').innerHTML=Cookies.get("name",number); 

} 
function dd3(){ 
Cookies.get("amountsz"); 

    document.getElementById("hz").innerHTML='0'; 
var numbers=0; 

     Cookies.set("named",numbers); 
     document.getElementById('hz').innerHTML=Cookies.get("named",numbers); 

} 


function increase(){ 

Cookies.get("amount"); 
    var values = parseInt(document.getElementById('hs').innerHTML, 10); 

    values++; 
    Cookies.set("name",values); 

    document.getElementById('hs').innerHTML=Cookies.get("name",values); 


} 


window.onload=function(){ 


     document.getElementById('hs').innerHTML=Cookies.get("name"); 
     document.getElementById('hd').innerHTML=Cookies.get("names"); 
      document.getElementById('hz').innerHTML=Cookies.get("named"); 

} 























          </div> 
    <div class="item"> 
      <h1>Lemon Cookies</h1> 
      <h1 id="hd">1 </h1> 
     <img src="https://cdn.averiecooks.com/wp-content/uploads/2014/08/lemoncookies-11.jpg" width="260" height="340" /> 
    <button class="add-to-cart" onclick="increase2()" id="d">Increase value of cookie</button> 


</div> 
    <button id="clear"onclick="dd2()" style="position:relative;top:790px;left:-900px;"class="c">clear</button> 
    <div class="item"> 

     <h1>Chocholate Cookies</h1> 
     <h1 id="hs">1 </h1> 
    <img src="https://s3-media2.fl.yelpcdn.com/bphoto/JmnFudPHm1Au3XHCaoy20Q/ls.jpg" width="260" height="340" /> 
    <button id="dzz" onclick="dd()">clear</button> 
<button class="add-to-cart" onclick="increase()" id="dy">Increase value of cookie</button> 



</div> 

</div> 


    <div class="item"> 

    <h1 id="oreo"> Cookies</h1> 
    <h1 id="hz">1 </h1> 
    <br></br> 
<img id="sc" src="http://thimbleanna.com/images/2008/food/OatmealCookieStack.jpg" width="260" height="340" /> 
<button class="add-to-cart" onclick="increase3()" id="ds">Increase value of cookie</button> 
<button id="clear"onclick="dd3()" style="position:relative;top:-3px;">clear</button> 


</div> 


    <div id="myDiv2" style="font-weight: bold;"></div> 
        <script src="cookies.min.js"></script> 

答えて

0

クッキーライブラリの内容を確認すると便利です。あなたができる最も簡単な方法は、例えば、Cookies.getへの呼び出しを置き換える迅速なヘルパーメソッドを追加します:

function getCookieValue(key, defaultValue) { 
    var result = Cookies.get(key); 
    return typeof r === 'undefined' ? defaultValue : result; 
} 

すべてCookies.get()の呼び出しが、その後getCookieValue(「名前」、0)のようなものになるだろう0はデフォルト値です。

(Cookieが「クラス」の場合は、このメソッドをプロトタイプに追加します)

関連する問題