1

我正在phonegap上开发一个移动应用程序,我需要在页面之间传递变量,就像:http ://coenraets.org/apps/directory/jqm/index.html

但我的问题是我不能使用 php 文件。我怎样才能做到这一点 ?谢谢 :)

我刚刚尝试了此处提到的 LocalStorage:http: //docs.phonegap.com/en/1.6.1/cordova_storage_storage.md.html#localStorage 但它不起作用:这是我的代码:

第 1 页:

$(data).find("Book").each(function () {
        var temp = $(this).find("name").text();
        var temp1 = $("#champ").val().replace(" ", "") ;

        if (temp1 != "") {
            if (temp.toLowerCase().search(myRegExp) > -1) {
                $("#result_list").append("<li><a href='recherche_details.html' data-transition='pop'><img src='images/a.jpg' /><p><strong>Titre : " + temp + "</strong></p><p>Auteur : " + $(this).find("address").text() + "</p><p>Pays : " + $(this).find("country").text() + "</p></a></li>").listview("refresh") ;
                $envoi_search.attr("disabled", "");
                // Using the LocalStorage
                window.localStorage.setItem("titre" + i, temp);
                i++ ;
            }
        }
    });

第2页 :

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

        // Wait for Cordova to load
        document.addEventListener("deviceready", onDeviceReady, false);

        // Cordova is ready
        function onDeviceReady() {
            // keyname is now equal to "key"
            var value = window.localStorage.getItem("titre0");
            $("#result").append("Yoooo" + value + " !! you are here") ;
        }
    </script>

但它不起作用。你有什么主意吗 ?

4

2 回答 2

1

location.hash在or (querystring)中设置您的变量location.search,然后在第二页上使用 JavaScript 检索它。

https://developer.mozilla.org/en/DOM/window.location#Properties

不要忘记,当您检索location.hashor时location.search,您需要使用以下内容去除第一个字符(# 或 ?).substring(1)

var hash = location.hash.substring(1);

另请参阅此问题location.search以了解将字符串解析为键和值的技术。

于 2012-05-16T16:25:55.827 回答
1

我很想为此使用 LocalStorage,将数据存储在第一页并在下一页检索它。

然后清空localstorage,防止被遗忘。

http://docs.phonegap.com/en/1.2.0/phonegap_storage_storage.md.html#localStorage

于 2012-05-16T16:31:17.647 回答