0

jQuery Mobile を使用して BlackBerry PlayBook 用のアプリを作成しています。ページ (実際にはdivwith data-role='page') には、それぞれ固有のテキストを持つ多数の (たとえば、125 個の) ボタンがあります。aこれにはwith タグを使用しましdata-role='page'た。

上記のような別のページがありますが、同じ HTML ファイル内に異なるコンテンツがあります。このページの内容は、ページ 1 でクリックされたボタンによって異なります。

私の質問は、ページ 1 でクリックされたボタンに従って、関連するコンテンツと共にページ 2 を読み込むにはどうすればよいですか? <a>タグとタグの中間にあるテキストをページ 2 に渡し、</a>それに応じてコンテンツをロードする必要があります。

どんな助けでも大歓迎です。

4

3 に答える 3

2

たとえば、URL自体を使用してクエリ文字列を使用してデータを渡し、呼び出されたページのpageshowイベントでそれを確認して適切なコンテンツを表示できます。

ボタンのマークアップ

<a href="#page2?btn=Hello">Button 1</a>

呼び出される少し前に pageShow にバインドします (委任されているため、実際にはドキュメントの準備ができている必要はありませんが、アプリを開始する場所であると仮定すると、そこに配置できます)。

$(function() {
     $(document).delegate('#page2', 'pageshow', function (event, ui) {
                var qryStringResult = getParameterByName('btn'); //hello                     
        });  
});

Artem Barger の機能 - https://stackoverflow.com/a/901144/384985

 function getParameterByName(name) 
{
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regexS = "[\\?&]" + name + "=([^&#]*)";
  var regex = new RegExp(regexS);
  var results = regex.exec(window.location.search);
  if(results == null)
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}
于 2012-05-22T13:37:22.953 に答える
1

各ボタンに一意の値が関連付けられている可能性があり、クリックすると各ボタンで同じ機能が起動します。その機能では、ページに直接応じて値と値を確認します。または、html5 の localStorage/sessionStorage を使用して、ページ間で渡される値を保存できます。詳細については、こちらをご覧ください

于 2012-05-22T13:28:14.550 に答える