更改URL以触发GWT中的事件

更改URL以触发GWT中的事件,gwt,Gwt,我正在遍历一些数据,并根据如下条件生成参数化URL链接: finishedHTML.append("<a href=\"http://" + domain + "&service=" + allEvents[eventCounter].EventService +"&day="+ offSet+(-1 * i) +"\"><img src=\"/info.jpg\" alt=\"Info\"/>"); 换句话说,如果我输入example.com?serv

我正在遍历一些数据,并根据如下条件生成参数化URL链接:

finishedHTML.append("<a href=\"http://" + domain + "&service=" + allEvents[eventCounter].EventService +"&day="+ offSet+(-1 * i) +"\"><img src=\"/info.jpg\" alt=\"Info\"/>");

换句话说,如果我输入
example.com?service=1
我将得到service=1作为我的查询字符串。如果我输入
example.com#?service=1
,我会得到查询字符串的空值。

使用
History.addValueChangeHandler(handler)
,并创建一个处理程序来捕获URL更改

不需要单击处理程序等,URL中“哈希”部分的任何更改就足够了

编辑:

请参阅此代码示例-它将解析表单
http://mydomain/my/path#tok1&tok2&tok3

public void onValueChange(ValueChangeEvent<String> event) {
  String hash = event.getValue();
  if ( hash.length() == 0 ) {
    return;
  }
  String[] historyTokens = hash.split("&",0);
  // do stuff according to tokens
}
ValueChange上的公共作废(ValueChangeEvent事件){
字符串哈希=event.getValue();
if(hash.length()==0){
返回;
}
字符串[]historyTokens=hash.split(“&”,0);
//按代币做事
}
(仅响应您的更新) 你试过了吗

History.getToken()

为了获得“#”后面的值?

谢谢Adam,我实现了History.addHistoryListener,它会响应URL中的更改。但是,现在我查找查询字符串的函数看不到任何超过“#”的内容。有没有其他方法可以获取整个查询字符串?
History.getToken()