如何在Phonegap中刷新后保存输入数据

Posted

技术标签:

【中文标题】如何在Phonegap中刷新后保存输入数据【英文标题】:How to save input data after refresh in Phonegap 【发布时间】:2019-03-07 13:31:06 【问题描述】:

我正在使用 Phonegap 创建一个应用程序,让用户可以记下他们在健身房进行的锻炼。问题是当用户添加另一组或练习时,先前输入中的数据会被删除...

function addTableRow(id, set) 
  document.getElementById('table-' + id).innerhtml += '<tr style="color:white"><td class="set">' + set + '</td><td><input class="input" style="left:25%" value="x"></input></td><td><input class="input" style="left:60%" value="kg x reps"></input></td></tr>';
  document.getElementById('table-plus-set-' + id).onclick = function() 
    addTableRow(id, set + 1);
  ;


function addTableExersice(id, exersice) 
  document.getElementById('exersice-holder').innerHTML += '<div class="exersice"><table style="width:100%" id="table-' + exersice + '">Exercise: <input placeholder="Input exersice" class="enter-Exercise"></input><tr style="color:white"><th>SET</th><th>GOAL</th> <th>ACHIEVED</th></tr><tr style="color:white"><td class="set">1</td><td><input class="input" style="left:25%" value="x"></input></td><td><input class="input" style="left:60%" value="kg x reps"></input></td></tr></table><div class="plusSet" onclick="addTableRow(' + exersice + ', 2)" id="table-plus-set-' + exersice + '">+</div></div>';
  document.getElementById('table-plus-exersice-1').onclick = function() 
    addTableExersice(id, exersice + 1);
  ;
.input 
  width: 100%;
  text-align: center;


.set 
  font-size: 20px;


.exersice 
  width: 100%;
  ;
  height: auto;
  top: 20%;
  left: 0%;
  color: white;
  border: 1px solid white;
  margin-bottom: 20px;
  margin-left: 2px;


.exersice table 
  color: white;


td 
  text-align: center;


.plusSet 
  font-size: 30px;
  text-align: center;
  cursor: pointer;


.plusExersice 
  font-size: 30px;
  text-align: center;
  cursor: pointer;
  color: white;
  width: 100%;


.enter-Exercise 
  width: 70%;


.exersice-holderStyle 
  text-align: center;
  width: 100%;
<div id="exersice-holder" class="exersice-holderStyle">
  <div class="exersice">
    <table style="width:100%" id="table-1">
      Exercise: <input placeholder="Input exersice" class="enter-Exercise"></input>
      <tr style="color:white">
        <th>SET</th>
        <th>GOAL</th>
        <th>ACHIEVED</th>
      </tr>
      <tr style="color:white">
        <td class="set">1</td>
        <td><input class="input" value="x"></input>
        </td>
        <td><input class="input" value="kg x reps"></input>
        </td>
      </tr>
    </table>
    <div class="plusSet" onclick="addTableRow(1, 2)" id="table-plus-set-1">+</div>
  </div>
  <div class="plusExersice" onclick="addTableExersice(1, 2)" id="table-plus-exersice-1">+</div>
</div>

我能否以某种方式在 中编写一些内容以使输入数据在 onclick tableExercise/tableRow 之后保留?

感谢您对此提供的任何帮助 :) PS。我对此很陌生,所以如果代码有点混乱,我很抱歉......

【问题讨论】:

【参考方案1】:

这可能有助于您在 Phonegap javascript 脚本中保存值:本地存储

设定值

localStorage.setItem("mytime", Date.now()); 

读取值

var x = localStorage.getItem("mytime"); 

文档

https://www.w3schools.com/jsref/obj_storage.asp

【讨论】:

以上是关于如何在Phonegap中刷新后保存输入数据的主要内容,如果未能解决你的问题,请参考以下文章

单击另一个表单上的保存按钮后如何刷新以前的表单

Phonegap如何在android上保存永久数据

如何保存切换状态,刷新页面后不会丢失

单击保存按钮后或以固定时间间隔如何自动刷新交互式网格?

保存后如何返回上一个控制器并刷新该控制器

如何在刷新页面时自动保存输入