1

私は2つのページを持ってp1.htmlおりp2.html、jQueryMobileを使用しています。

にはいくつかのリンクがありp1.html、すべてのリンクはに移動していますがp2.html、少し違いがあります。

intパラメータをjavascriptに渡したいのでp2.html(たとえば、リンク番号)、のjavascriptコードはp2.html、パラメータに基づいてそれ自体に少し変更を加えintます(遷移が開始する前)。

Ajaxナビゲーション機能とjQueryMobileのトランジションを使用したいのですが、ページアンカー(p2.html#6)を使用したくありません。

そのパラメータをに送信する方法はp2.html

4

3 に答える 3

2

クッキーを使用して関連情報を保存できますか?

cookiejqueryプラグインを取得します。

p1.html

<a href="p2.html" data-p2data="1">Link 1</a>
<a href="p2.html" data-p2data="2">Link 2</a>
<script type="text/javascript">
$(document).ready(function(){
    $('a[data-p2data]').click(function(){
        $.cookie('p2data', $(this).data('p2data'));
    }
}
</script>

p2.html

<script type="text/javascript">
    var p2data = $.cookie('p2data');
    // .. process the page based on the value in p2data.
</script>
于 2012-09-05T21:48:48.907 に答える
1

ドキュメントから、ページ間でパラメータを渡す組み込みの方法はありません。

ただし、そこに記載されているプラ​​グインの1つ(page-paramsまたはjquery-mobile-router)を使用することも、localStorageまたはcookiesを使用することもできます。

これらのSOの質問のいくつかを見てください

jQuery Mobileを使用してページ間でデータを渡す?

jQueryMobileのページIDにパラメーターを渡す

jQMページ間で変数を保存する方法は?

于 2012-09-05T21:47:21.650 に答える
1

page1.htmlのリンクがクリックされたときに、グローバル変数を使用してその数値を格納できます。

$('a.special_link').click(function() {window.my_id = this.id});

... JQMはデフォルトでAJAXedナビゲーションを使用するため、page2.htmlでこれを取得できるようになります。したがって、この変数に引き続きアクセスできる単一のページにとどまります。

$('document').on('pagebeforechange', function(toPage, data) {
    if (toPage == 'page2.html') {
        alert('you have clicked on link number: ' + window.my_id);
    }
});
于 2012-09-05T21:47:30.050 に答える