2

我正在尝试通过 ajax 调用加载页面,使用mobile.changepage如下所示:

mobile.changePage( "index.html", {transition: "slide", reloadPage: true, data: id})

我尝试在index.html所有功能上使用,例如:

$( '#mainMenu' ).live( 'pageinit',function(event){var movie_id = location.search;});

页面已加载,但我无法在页面上获取“id”的值index.html,只要我硬刷新它就可以了。

我究竟做错了什么?

谢谢罗德里戈

4

1 回答 1

1

假设您将单个参数传递给page2,您可以使用location.searchinpage2来获取电影变量,但我发现它不适用于常规浏览器。因此,在结果页面中,您需要解析$(this).data('url').

此外,脚本代码page2必须在DIV#page2块内,因为当下一页更改时,标题 HTML 中的内容不会更改(正如另一位成员所注意到的)。

脚本块:

第 1 页

<script language="javascript">

    $( '#mainMenu' ).live( 'pageinit',function(event){
        $('.btnTxtSearch').bind('click',function () {
            var movieName = $('#txtMovieTitle').val();
            if (!movieName || movieName.length == 0 || movieName == null) {
                alert('Please insert a title before clicking the button');
                return false;
            } //end of if

            $.mobile.changePage( "page2.html", {transition: "slide", reloadPage: true, data: movieName}); 

        });
    });

</script>

第2页

<script language="javascript">
//Without this pageinit may be called multiple times in back and forth use case.   
$('#page2').die( 'pageinit');

$('#page2').live( 'pageinit',function(){
    var movieName = $(this).data('url').split('?')[1];
    //Debug:
    alert(movieName);
});     


</script>
于 2012-08-08T23:19:03.107 回答