2013-02-09 42 views
2

要开始我有两个页面(在同一个文件夹中,在同一个域中),我们将它们称为dummy和dummy2。本地存储和Web SQL不能在多个页面上工作

我已经尝试了html5 localstorage和现在的webSQL,并发现我可以保存并读取数据(假人是具有保存和读取按钮的页面,而dummy2只具有读取按钮),但是当我从虚拟模式切换到虚拟模式2,本地存储和Web SQL消失。

从我的理解来看,这两种技术都应该将数据保存在网站上的多个页面上?

这是我与本地存储的WebSQL代码注释掉

<script> 
    $(document).ready(function() { 
     $("#save").click(function() { 
      //localStorage.setItem('dummy', 'Hello there'); 
      //console.log(localStorage.getItem('dummy')); 
      var db = window.openDatabase("UserDetails", "1.0", "User Details", 10000); 
      db.transaction(populateDB, onDBError, onDBSuccess); 
      function populateDB(tx) { 
       tx.executeSql('DROP TABLE IF EXISTS DETAILS'); 
       tx.executeSql('CREATE TABLE IF NOT EXISTS DETAILS (id unique, Name, Email)'); 
       tx.executeSql('INSERT INTO DETAILS (id, Name, Email) VALUES (1, "User1", "[email protected]")'); 
      } 
      function onDBError(error) { 
       console.log("Error"); 
      } 
      function onDBSuccess(msg) { 
       console.log("Success (Saved)"); 
      } 
     }); 
     $("#read").click(function() { 
      tx.executeSql('SELECT * FROM DETAILS ORDER BY Name', [], onQuerySuccess, onDBError); 
      function onQuerySuccess(tx, results){ 
       var name = results.row.item(i).Name; 
       console.log(name); 
      } 

     }); 
    }); 
</script> 

这是打救的结果; enter image description here

但是,当我移动到dummy2: enter image description here

任何想法?

+0

如果你刷新dummy.html会发生什么? – sajawikio 2013-02-09 23:29:38

+0

在这里聊天:http://chat.stackoverflow.com/rooms/24246/dummy – sajawikio 2013-02-09 23:30:00

回答

0

它的一些奇怪的系统甚至铬安装腐败的事情关于资源选项卡。你的代码工作正常,当我看着它,我的资源选项卡localStorage立即更新并坚持重新加载,但我记得有一次我的资源选项卡没有工作,我有类似的问题,它不刷新刷新,我必须使用控制台才能看到正确的结果。

如果它在Chrome控制台中适用于您,或者以其他方式编程式查询localStorage对象,那么无论它在那些Web检查器UI中说什么,它仍然可以正常工作,并且您的代码没问题。

相关问题