2017-07-14 143 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的技术。