2

まず、2 つのページ (同じフォルダー内、同じドメイン内) があり、それらをダミーとダミー 2 と呼びます。

私はhtml5 localstorageと今webSQLの両方を試してみましたが、ダミーのときにデータを保存して読み取ることができることがわかりました(ダミーは保存と読み取りボタンがあるページですが、ダミー2には読み取りボタンしかありません)が、ダミーから切り替えるとdummy2 にすると、ローカル ストレージと Web SQL が消えます。

私の理解では、これらの手法は両方とも、サイトの複数のページで使用されるデータを保存する必要がありますか?

ローカル ストレージをコメント アウトした webSQL コードを次に示します。

<script>
    $(document).ready(function () {
        $("#save").click(function() {
            //localStorage.setItem('dummy', 'Hello there');
            //console.log(localStorage.getItem('dummy'));
            var db = window.openDatabase("UserDetails", "1.0", "User Details", 10000);
            db.transaction(populateDB, onDBError, onDBSuccess);
            function populateDB(tx) {
                tx.executeSql('DROP TABLE IF EXISTS DETAILS');
                tx.executeSql('CREATE TABLE IF NOT EXISTS DETAILS (id unique, Name, Email)');
                tx.executeSql('INSERT INTO DETAILS (id, Name, Email) VALUES (1, "User1", "example@example.com")');
            }
            function onDBError(error) {
                console.log("Error");
            }
            function onDBSuccess(msg) {
                console.log("Success (Saved)");
            }
        });
        $("#read").click(function() {
            tx.executeSql('SELECT * FROM DETAILS ORDER BY Name', [], onQuerySuccess, onDBError);
            function onQuerySuccess(tx, results){
                var name = results.row.item(i).Name;
                console.log(name);
            }

        });
    });
</script>

これは保存を押した結果です。 ここに画像の説明を入力

しかし、dummy2 に移動すると: ここに画像の説明を入力

何か案は?

4

1 に答える 1

0

[リソース] タブに関する、ある種の奇妙なシステム、またはクロムのインストールの破損でさえあります。あなたのコードを見ると問題なく動作し、localStorage の下の [リソース] タブは即座に更新され、リロードしても持続しますが、一度 [リソース] タブが機能せず、更新時に同様の問題が発生したことを覚えています。正しい結果を確認するためだけにコンソールを使用する必要がありました。

Chrome コンソールで、または localStorage オブジェクトをプログラムでクエリすることによって機能する場合は、それらの Web インスペクター UI で何を言っているかは関係ありません。とにかく機能し、コードは問題ありません。

于 2013-02-10T00:54:56.787 に答える