我需要在GWT应用程序中提供上下文相关的帮助。为此,每个GWT视图都有许多帮助链接,每个链接都会打开一个带有相应帮助文本的对话框(每个链接都不同)。问题是我不能拥有这么多ui:field元素,每个元素都有唯一的名称,并且在我的视图类中点击监听器,因为帮助链接的数量可能非常大。我需要的是在我的UI绑定器xml文件中有许多Anchor元素,并且所有锚点应该具有相同的单击侦听器。点击监听器将根据一些参数来决定,这些参数有助于在对话框中显示文本。
我尝试为所有链接使用具有不同历史记录的超链接元素,但它会更改不可取的历史记录。我只是想显示一个带有相应帮助消息的对话框而不修改历史记录。
GWT有可能吗?
感谢您的帮助。
答案 0 :(得分:2)
显然,您可以在UiBinder中使用<g:Anchor href="javascript:;">
,然后在代码中添加处理程序。
但是,由于您的应用程序周围有很多这样的内容我会使用gwtQuery:
$(".help-link").click(new Function(){
public void f(Element element) {
// do something here
// `element` tells you which element triggered the event
});
然后我只是将css类.help-link
添加到所有相关的锚点。