在我的應用程序中打開一個彈出窗口,我需要打開一個彈出,並顯示了一定的成果,從一個Javascript功能來。我打開彈出窗口的命令:傳遞文字的JS功能
var popup=window.open('popup.html', 'width=500', 'height=500');
其中popup.html
是調用chart.js之庫用於顯示一些圖表的HTML頁面。我需要將數據傳遞到此窗口才能顯示正確的圖形。我嘗試了很多例子,但都沒有成功。我怎麼能解決這個問題?
盧卡
在我的應用程序中打開一個彈出窗口,我需要打開一個彈出,並顯示了一定的成果,從一個Javascript功能來。我打開彈出窗口的命令:傳遞文字的JS功能
var popup=window.open('popup.html', 'width=500', 'height=500');
其中popup.html
是調用chart.js之庫用於顯示一些圖表的HTML頁面。我需要將數據傳遞到此窗口才能顯示正確的圖形。我嘗試了很多例子,但都沒有成功。我怎麼能解決這個問題?
盧卡
你可以通過在URL中的散列的基本數據,改變你的JS到
var popup=window.open('popup.html#MY_DATA', 'myWindow','width=500,height=500');
然後在popup.html頁面,您可以通過查看location訪問它。 hash變量:
window.location.hash
//This will be "#MY_DATA"
http://stackoverflow.com/questions/2430936/whats-the-difference-between-window-location-and-document-location-in-javascrip – mplungjan
因此,我可以簡單地聲明瞭'變種文字=「someLongText」;'在我的JS函數中,使用'window.open'函數的'popup.html#text''參數傳遞它,並將其用在popup.html頁面中的腳本中,並使用'var text2 = window.location.hash;'? –
不,你必須把它作爲「popup.html#someLongText」或「popup.html#」 +文字 –
在#hash或?search中傳遞信息。你的參數錯誤太'VAR彈出= window.open( '#popup.html parmtopass', 'windowName', '寬度= 500,高度= 500');' – mplungjan
@anu - 不是一個真正的偉大的重複 – mplungjan
如果頁面在同一個域中,將JSON保存在全局變量中,並以'opener.jsonvar'的形式從子項訪問它 - 或者創建一個getter並調用它:'opener.getJsonVar()' – mplungjan