跨越不同页面的Phonegap中的LocalStorage

时间:2013-10-08 20:45:15

标签: javascript jquery html html5 cordova

我正在尝试使用存储在phonegap内置的localStorage功能中的简单字符串作为一个简单的设置,以便从服务器获取数据集。在index.html中,我已经能够从<select>菜单中保存字符串并将其显示在标题中。使用此javascript代码:

            <script type="text/javascript" charset="utf-8">

            window.onload = function() {
                document.getElementById("BtnStore").addEventListener("click", storeData, false);
                $("#headertitle").append(loadData()).headertitle("refresh");
            }

            function storeData() {
                var e = document.getElementById("klass");
                var klass = e.options[e.selectedIndex].value;
                localStorage.setItem("klass", klass);

                window.location.href = "index.html";
            }



            function loadData() {
                var getKlass = localStorage.getItem("klass");
                return getKlass;
            }


            </script>

这会将存储的值附加到<h1>元素中。

但是当我从一个不同的html页面尝试从本地商店引用相同的密钥时,没有显示任何内容。这是代码:

            <script type="text/javascript" charset="utf-8">

            document.addEventListener("deviceready", onDeviceReady, false);
            function onDeviceReady() {
                $("#hejsan").append(loadData()).hejsan("refresh");
            };


            function loadData() {
                var getKlass = localStorage.getItem("klass");
                return getKlass;
            }


            </script>

这也是一个测试,将字符串附加到<p>元素。出于某种原因,没有任何事情发生,有人知道为什么吗?

由于

1 个答案:

答案 0 :(得分:0)

我想出了如何使它工作,这是我使用的代码:

第一页:

            <script type="text/javascript" charset="utf-8">

            window.onload = function() {
                document.getElementById("BtnStore").addEventListener("click", storeData, false);
                $("#headertitle").html(loadData()).headertitle;
            }

            function storeData() {
                //localStorage.clear();
                var e = document.getElementById("klass");
                var klass = e.options[e.selectedIndex].value;
                localStorage.setItem("klass", klass);

                window.location.href = "index.html";
            }



            function loadData() {
                var getKlass = localStorage.getItem("klass");
                return getKlass;
            }


            </script>

第二页:

                $(document).ready(function() {
                    function loadData() {
                        var getKlass = localStorage.getItem("klass");
                        $("#hejsan").html(getKlass).hejsan;
                    }
                    loadData();
                }

如果有其他人卡住了! :)

相关问题