2017-07-14 172 views
0

您好,我需要幫助保存對javascript輸入的HTML輸入標籤值屬性所做的更改。 每次點擊我啓動和運行的參數時,輸入字段應該增加一個,當我進入考試時,元素寫入相應的數字(從6到7,從7到8等),但當我刷新頁面不保存最後一個條目但返回到起始數字,我需要一個PHP的這個或... 我不會代碼工作這種方式我上傳圖像的價值從6到7,當我回到頁值是7不是6再次javascript輸入的HTML輸入標籤值屬性

HTML代碼

    <form action="" method="post" id="cms" name="cms" enctype="multipart/form-data"> 
        <div class="input-group"> 
         <input type="file" name="fileToUpload" id="fileToUpload"> 
         <input type="text" name="numberjpg" id="numberjpg" value='6'> 
         <input type="text" name="numberpng" id="numberpng" value='6'> 
         <input type="bottun" id="submit" name="submit" class="form-control" value="Submit" onclick="increase()" > 
        </div> 
       </form> 

js代碼

 var x=document.getElementById('numberjpg') 
     function increase(){ 
      x.value++; 
      alert(document.getElementById('numberjpg').value); 
      document.getElementById("numberjpg").setAttribute('value',document.getElementById('numberjpg').value); 
     } 

我對之前不清楚的問題表示歉意

+0

JavaScript不能在刷新時存儲值,如果你想保存重新加載的值,那麼你需要將它保存在cookie中或像php一樣的服務器端語言,如你所說。 –

+0

您也可以使用AJAX並防止頁面刷新。 – Difster

回答

0

您可以使用Storage Web API,如localStorage或sessionStorage。我在本例中使用local。以下是我添加的代碼的解釋。

https://jsfiddle.net/6bujo188/1/

var stored = +localStorage.getItem('boxvalue'); 

上面得到保存爲boxvalue任何字符串的值並將其返回給存儲。它由一個加號前綴來執行簡寫類型轉換爲整數。

 if(stored) { 
    x.value = stored; 
    } 

以上檢查是否存在存儲的項目,如果存在,則會更改存儲爲x的元素的值。

window.onbeforeunload = function(){ 
     localStorage.setItem('boxvalue', document.getElementById('numberjpg').value); 
} 

上面的內容在窗口卸載前保存變量。例如,如果刷新頁面。

0

嗯JS不會緩存這些值,您可能需要通過cookie保存或使用localStorage或任何圍繞Web的技術。