用于存储/传递从html page1到page2的值的脚本

时间:2011-12-30 07:10:45

标签: javascript jquery jquery-mobile cordova

我正在制作一个列表视图,我想将一些值传递给page2.html,例如“name”,“info”,“hap”,“lat”和“lon”。这样做的正确或最佳方法是什么?在php中,我使用POST或GET是否有更好的方法呢?如果GET是要走的路,请问如何在第2页中实现它?是的,我用google搜索仍然不确定如何正确地做到这一点。

<div data-role="page" id="manual">
    <div data-role="header" data-theme="b">
        <a onClick="javascript: history.go(-1)" data-icon="back">Back</a>
        <h1>Manual</h1>
    </div>
    <div data-role="content">
        <ul id="directory" data-role="listview" data-inset="false"
            data-filter="true">
        </ul>
    </div>
</div>


function parseXML(xml) {
    $(xml).find("cat").each(
            function() {
                name = $(this).attr("name");
                info = $(this).attr("info");
                hap = $(this).attr("hap");
                lat = $(this).attr("lat");
                lon = $(this).attr("lon");
                code = $(this).attr("code");
                $("#directory").append(
                        "<li><a href=\"page2.html?name=\"" + name + ">" + name + "</a></li>");
            });
}

2 个答案:

答案 0 :(得分:0)

<script>
(function(){  
    var get = window.$_GET = {};  
    var args = location.search.replace('?','').split('&');  
    for(var i=0,j=args.length,temp;i<j;i++){  
        temp = args[i].split('=');  
        get[temp[0]] = temp[1];  
    }  
})();  

// test
if(!$_GET['arg1'])location.href = "?arg1=111&arg2=4545454545";  
for(var p in $_GET){  
    alert('The argument'+p+'\'s value is:'+$_GET[p]+'<br>');  
} 
</script>

我不知道你是否能理解。希望能帮到你。

答案 1 :(得分:0)

我建议使用localStorage。您可以使用JavaScript在本地存储键/值对,这非常简单:

// Setting a value
localStorage.setItem("someKey", "some value");

// Getting a value
var someValue = localStorage.getItem("someKey");

这些值也会在页面和会话中保存。

有关详细信息,请参阅description in the Safari Developer Library