我循環通過一些數據和生成參數化URL鏈接基於這樣一些條件:變化URL觸發事件在GWT
finishedHTML.append("<a href=\"http://" + domain + "&service=" + allEvents[eventCounter].EventService +"&day="+ offSet+(-1 * i) +"\"><img src=\"/info.jpg\" alt=\"Info\"/>");
我有我的應用程序開始檢查URL參數時的頁面被加載/刷新,並根據參數是否存在以及它們是什麼進行一些操作。
但是,我在參數的開頭添加了一個#,因此不需要刷新頁面,但現在它不會觸發檢查URL的函數。
我的問題是如何在用戶點擊鏈接時觸發GWT中的事件?我是否需要生成GWT控件,並鏈接點擊處理程序?是否有可能設置URL更改時觸發的事件???
UPDATE: 亞當回答最初的問題的一部分,但「#」後我不能讓查詢字符串。難道還有比下面的功能更好的辦法:
public static String getQueryString()
{
return Window.Location.getQueryString();
}
換句話說,如果我進入example.com?service=1
我獲得服務= 1作爲查詢字符串我。如果我輸入example.com#?service=1
,則查詢字符串會得到空值。
感謝亞當,我實現了History.addHistoryListener,它正在響應URL中的更改。然而,現在我查找Querystring的函數無法看到'#'之後的任何內容。是否有另一種方法來獲取整個Querystring? – tpow 2010-08-02 20:12:00
我編輯了我的答案,添加了一個有效的代碼示例。 – adamk 2010-08-02 21:48:30