1

JQM を使用して、あるページから別のページに変数を渡したいです。HTML5のセッションを使用してこれを行いたいです。

最初のページで、次のように設定しました。

if(tagslistedarr[i].indexOf('#') == 0){

           arr.push(tagslistedarr[i]);

           var taglink = "<a class='atags' data-role='button' href='photostreamtags.html' onclick='sessionStorage.tag=" + tagslistedarr[i] + "'>" + tagslistedarr[i] + "</a>";

             thisholder.find('.hashtags').append(taglink);
};

これは単純に配列から #hashtag strong を取得し、それをリンクに変換します。ハッシュタグ strong は送信したい変数です。

受信ページでは、次のように簡単に設定しました。

    alert('Tag: ' + sessionStorage.tag);

しかし、これは機能しません-何も届きません。

機能し、リンクは.append()正しいページにリダイレクトされますが、アラートが表示されません。変数が保存または取得されているようには見えません。

これらのスクリプトはどちらも JQMdata-role="page"要素内に正しく配置され、次のようにラップされています。

$( "#photostreampage" ).on( "pageshow", function( event, ui ) {
});

私がどこで間違ったのか誰か知っていますか?

4

2 に答える 2

1

Raoul の提案に加えて、ブラウザでストレージが適用可能であることを確認してください。

If (('sessionStorage' in window) && window['sessionStorage'] !== null) {
    sessionStorage.setItem('tag', yourvalue);
});

値を取得するときの同様の検証。それを関数でラップし、onClick イベントから呼び出します。

于 2013-08-19T08:42:26.517 に答える