2014-09-11 70 views
0

有没有办法在页面上保留表单元素的值,而不使用页面上的data-dom-cache如何在不使用data-dom-cache的情况下保留jquery移动页面的状态

例如。我有一个表单,用户在表单(Page1)中输入安全数据并导航到另一个页面(Page2 - 表单继续),然后点击'Submit'按钮将请求发送到服务器。

  1. 如果请求失败并且用户导航回第1页,则用户输入的值将保留在页面上。

  2. 如果请求成功并且用户导航回第1页,则用户输入的值不保留在页面上。

有没有一种方法可以在页面上不使用'data-dom-cache'属性。

回答

1

你可以使用HTML的sessionStorage

编辑:

当您离开第1页,你可以保存的sessionStorage例如页面数据

var keyForStep1 ='step1' 
var objectValue = JSON.stringify({name:"John",lastname:"Doe", other:"other staff"});//NOTE: your form data 
if (typeof (sessionStorage) !== "undefined") { 
       if (keyForStep1!== null) { 
        if (sessionStorage.keyForStep1) { 
         try { 
          //sessionStorage.key = objectValue; 
          sessionStorage.setItem(keyForStep1, objectValue); 
         } catch (e) { 
          console.log("LIMIT REACHED: (" + i + ")"); 
          console.log(e); 
         } 
        } 
       } 
      } 

如果请求失败,你可以阅读从这样的存储数据(你可以检查是否存在keyForStep1如果它不然后从中读取数据)。

var objData = JSON.parse(sessionStorage.keyForStep1); 
console.log(objData.name)//etc.. 

http://www.w3schools.com/html/html5_webstorage.asp

你可以在这里看到的sessionStorage浏览器支持:

http://caniuse.com/#feat=namevalue-storage

相关问题