2013-01-02 27 views
0

我是html5和js的新手,如果這是一個非常簡單的問題,請原諒我的無知。 但有人可以幫我找出我的情況的解決方案:在2個html5頁面之間訪問web sql數據庫

我已經創建了一些靜態HTML5頁面,也是一個脫機數據庫從我的js代碼可以訪問所有html5頁面。 現在我正試圖從一個頁面更新數據庫,並希望更新所有html5頁面的數據庫反射。

在此先感謝。

回答

0

正如你所說它是離線數據庫,將其存儲在某個全局變量中,然後將其存儲在數據庫中。在所有其他頁面中,依賴於該全局變量。因此,如果在page1中更新了一些數據,則還要將其存儲在某個全局變量中。並在所有其他頁面中使用該變量。

+0

對於離線數據庫我的意思是我沒有服務器通信,我已經將靜態虛擬值插入數據庫表的字段。現在,當我更新表中的值時,更新的數據庫表應反映在所有其他正在訪問它的頁面。 – user1942245

0

要從幾個不同的頁面訪問離線數據庫,請確保您的所有頁面都在同一個域中。

創建一個新連接到您的所有頁面上的數據庫。

var db_conn = window.openDatabase(_ID_DATABASE_NAME, _ID_DATABASE_VERSION, _ID_DATABASE_DESC, _ID_DATABASE_SIZE); 

所有傳遞給函數的參數都應該保持不變。

如果您嘗試訪問的值僅爲幾個名稱值對,請嘗試使用本地存儲區的概念。以下是可跨頁訪問的setter getter方法。

window.localStorage.setItem('myFirstLocalStorage_Name', 'myFirstLocalStorage_Value'); 
var ls_value = window.localStorage.getItem('myFirstLocalStorage_Name'); 

希望您能夠跨頁面獲取您的值。

0

兩個頁面的域需要相同。

和W3C表示

用戶代理可以限制訪問數據庫對象的腳本 起源於瀏覽 上下文的頂級文檔的域,例如拒絕爲頁面的API訪問從其他 域中運行的iframes。