2015-11-08 67 views
-1

我是編程新手,我在JavaScript中使用cookies掙扎了很多,所以我使用了本教程here。我使用'創建cookie功能',但我不確定如何製作一個功能,在頁面加載時將Cookie放回文本框。我看過W3學校,但仍然不知道。有任何想法嗎?在頁面加載時設置多個餅乾

這是我用來從'多個'文本框創建cookie的創建cookie功能。

+0

你的意思是你不知道如何從document.cookie中提取你的cookies ? – sergeyz

+0

是的,我不知道如何把它們放到正確的文本框中,編號爲 – Jazza132

+0

你的意思是說,你的文本框有id屬性設置,你不知道如何通過它們的id屬性獲取你的文本框DOM元素? – sergeyz

回答

0
<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
    <meta charset="utf-8" /> 
</head> 
<body> 
    <h2>Working Example</h2> 

    <form name="myForm" method="get" action="JavaScriptCookies.html" onsubmit="return storeValues(this);"> 
     <fieldset> 
      <label>Field 1</label><span><input type="text" name="field1" value=""></span> 
      <label>Field 2</label><span><input type="text" name="field2" value=""></span> 
      <label>Field 3</label><span><input type="text" name="field3" value=""></span> 
      <label>Field 4</label><span><input type="text" name="field4" value=""></span> 
      <span> 
       <input type="submit" value="Set Cookies"> 
       <input type="button" onclick="showCookies();" value="Retrieve Cookies"> 
      </span> 
     </fieldset> 
    </form> 
    <script type="text/javascript"> 
     function storeValues(form) 
     { 
      document.cookie = 'field1=' + form.field1.value; 
      document.cookie = 'field2=' + form.field2.value; 
      document.cookie = 'field3=' + form.field3.value; 
      document.cookie = 'field4=' + form.field4.value; 
      return true; 
     } 

     function showCookies() { 
      for (var i = 1; i <= 4; i++) { 
       x = document.getElementsByName("field" + i); 
       x[0].value = getCookie(x[0].name); 
      } 

      return true; 
     } 

     function getCookie(cname) 
     { 
      var name = cname + "="; 

      var ca = document.cookie.split(';'); 
      for (var i = 0; i < ca.length; i++) { 
       var c = ca[i]; 
       while (c.charAt(0) == ' ') c = c.substring(1); 
       if (c.indexOf(name) == 0) return c.substring(name.length, c.length); 
      } 

      return ""; 
     } 


    </script> 
</body> 
</html> 
0
<script type="text/javascript"> 
    if(field1 = getCookie("field1")) document.myForm.field1.value = field1; 
    if(field2 = getCookie("field2")) document.myForm.field2.value = field2; 
    if(field3 = getCookie("field3")) document.myForm.field3.value = field3; 
    if(field4 = getCookie("field4")) document.myForm.field4.value = field4; 
</script> 
+0

有沒有這個循環? – Jazza132