2

mobile.changepage以下に示すように、ajax呼び出しを介してページを読み込もうとしています。

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

私はindex.html次のようなすべての機能を使用しようとしました:

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

index.htmlページは読み込まれますが、ハードリフレッシュしても機能するので、ページの「id」の値を取得できません。

私は何が間違っているのですか?

ありがとうロドリゴ

4

1 に答える 1

1

に単一のパラメーターを渡すと仮定すると、page2でを使用location.searchpage2てムービー変数を取得できますが、通常のブラウザーではうまく機能しないことがわかりました。したがって、結果ページで、を解析する必要があります$(this).data('url')

また、ヘッダーHTMLの内容は、次のページが変更されても変更されないため(別のメンバーが気付いたように)、のスクリプトコードはブロックpage2内にある必要があります。DIV#page2

スクリプトブロック:

ページ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 に答える