Как создать GWT-якорь с игнорируемым href? - PullRequest
2 голосов
/ 23 июня 2011

Допустим, у меня есть HTML-якорь примерно так:

<a id="myid" href="something?a=b">Link</a>

и я хочу обернуть это в GWT Anchor, который имеет обработчик кликов, который отправляет пользователя куда-то еще и игнорирует значение href.

в обычном javascript кажется, что вы можете сделать это, выполнив:

<a id="myid" href="something?a=b" onclick="goSomewhereElse(); return false;">Link</a>

Но в GWT, похоже, нет способа сделать это ... я что-то упустил?

Спасибо!

Ответы [ 4 ]

1 голос
/ 07 октября 2011

Можете ли вы просто использовать тег g: Anchor вместо a?

<g:Anchor ui:field="myLink1">The Link To Click</g:Anchor>

И тогда в вашей реализации файла вы можете получить что-то вроде ...

@UiField
protected Anchor myLink1;

@UiHandler("myLink1")
public void handleMyLink1Click(ClickEvent event)
{
    //code to execute on click;
    event.preventDefault(); //If you want the href present
}

Это исключило бы необходимость наличия href вообще. Кроме того, если вам нужно иметь href, так как у вас есть clickEvent, вы можете добавить event.preventDefault () в UiHandler. (как видно из второй строки в UiHandler)

Может быть, я полностью пропустил то, что вы шли, но я надеюсь, что это немного помогает! :)

0 голосов
/ 23 июня 2011

Создайте Anchor как new Anchor(textToDisplay) и добавьте ClickHandler к нему.

0 голосов
/ 24 июня 2011

Измените его на:

<a id="myid" href="javascript:;">Link</a>
0 голосов
/ 23 июня 2011

Используйте Anchor и добавьте к нему ClickHandler.

...