如何使用Jquery mobile将数据从一个页面发送到另一个页面?

时间:2012-06-13 07:43:52

标签: android jquery-mobile jquery

  

可能重复:
  How-to store variable beetween jQM pages?

我是jquery mobile的新手,对于将数据发送到另一个页面有点困惑。在我的html文件中,它由listview组成。当我点击列表时,它需要重定向到另一个页面,同时我想将该列表中的数据发送到第二页。 其实我的代码是..

Polls.html

     <body>
    <section id="pollsscreen" data-role="page">
        <header data-role="header" > 
            <h1> Video </h1>
            <a href="index.html" data-role="button" data-icon="back" data-direction="reverse" data-transition="slide"> Back </a>
        </header>
        <div data-role="content">
            <ul id="pollslist" data-role="listview" data-theme="e" >
            </ul>
        </div>
    </section>
</body>

Polls.js(我的javascript文件)

   var addPollsList = function addPollsList() {
     $("#pollslist").prepend("<li><a href='pollsdetails.html'>What is your name?</a></li>");
     $("#pollslist").prepend("<li><a href='pollsdetails.html'>Give review of new movie..</a></li>");  
     $("#pollslist").listview("refresh");      
}

pollsdetails.html

    <section id="pollsdetailspage" data-role="page">
        <header data-role="header">   
            <h1> Polls </h1>
            <a href="polls.html" data-role="button" data-icon="back" data-direction="reverse" data-transition="slide"> Back </a>             
        </header> 
        <div data-role="content" class="pollsdetailsscreen">
            <p>Polls details page</p>
        </div>
    </section>    
</body>

根据代码,一切都运行良好。当我点击列表时,它会重定向到“pollsdetails.html”文件。但在这里我不知道如何将数据发送到该html页面,我想在pollsdetails.html页面中将该数据设置为

标签。任何人都可以帮助我.......

提前致谢...

3 个答案:

答案 0 :(得分:1)

你可以使用全局变量..

在Polls.js

var addPollsList = function addPollsList() {
 $("#pollslist").prepend('<li><a href="#" onclick="test('+Ur_data+')">What is your name?</a></li>');
 $("#pollslist").prepend('<li><a href="#" onclick="test2('+Ur_data+')">Give review of new movie..</a></li>');  
 $("#pollslist").listview("refresh");      

}

function test1(data){
    // set urs global variable here
    global_variable = data;
     $.mobile.changePage( "pollsdetails.html");
}

function test2(data){
    // set urs global variable  2 here
    global_variable_2 = data;
     $.mobile.changePage( "pollsdetails.html");
}

并且在pollsdetails.js中,您可以访问global_variableglobal_variable_2

答案 1 :(得分:1)

如果您尝试将简单的名称 - 值对传递到下一页,则可以使用查询字符串参数。

var addPollsList = function addPollsList() {
     $("#pollslist").prepend("<li><a href='pollsdetails.html?myparam=value1'>What is your name?</a></li>");
     $("#pollslist").prepend("<li><a href='pollsdetails.html?myparam=value2'>Give review of new movie..</a></li>");  
     $("#pollslist").listview("refresh");      
}

答案 2 :(得分:1)

我会选择Localstorage

var userReview = {
                "Name":"Bob",
                "Review":"Awesome party movie!!",
                "MovieTitle":"Project X"
               };

            //Store the object in local storage
            localStorage.setItem('UserReview',JSON.stringify(userReview));

然后,当您导航到其他页面时,您始终可以调用localstorage来获取信息。

var userReview = JSON.parse(localStorage.getItem("UserReview"));
var userName = userReview.Name;
var review = userReview.Review;
var movieTitle = userReview.MovieTitle;