0

静的サイト(設定ページと呼びましょう)があり、Javascript関数はmysqlテーブルからAJAXデータを取得し、HTMLドキュメントにテーブルを描画します。それは魅力のように機能します-それは私が必要とするすべてのデータを取り、それを適切な方法で実行します。これが私の関数です:

function get_people()
{
   $.post("/controller/get_people", function(data,status,xhr)
   {
       if(status=="success")
       {
           people_data = data;
           draw_table();
       }
   }) 
}

問題は、別のページに、すべての人とその横にチェックボックスがあるテーブルがあります。このチェックボックスをオンにしてボタンをクリックすると、設定ページに移動したいのですが、get_people関数は、前のページでチェックした人に関するデータのみをmysqlから選択します。

技術的に問題は、配列を別のページからjavascript関数に渡すにはどうすればよいですか?DOMなどに保存してJSから読み取ることはできますか?

いくつかのアイデアを教えてください:]

4

1 に答える 1

2

sessionStorageとを使用できますJSON.parse

最初のページ:

var arrayJSON = JSON.stringify(yourArray);
sessionStorage.setItem("tabledata",arrayJSON);

2ページ目:

var tableData = JSON.parse(sessionStorage.getItem("tabledata"));

これにより、現在のセッションの間、データがブラウザに文字列として保存されます。より永続的に保存したい場合は、sessionStorage(同じ構文)の代わりにlocalStorageを使用でき、ユーザーがブラウザーを閉じて後で戻ってきた場合でも保存されます。

MDN docsには、sessionStorageとlocalStorageの詳細があります

于 2013-03-07T15:35:11.093 に答える