2011-10-14 50 views
1

我剛剛開始學習UiBinder的方法,並與g:Anchor有一個愚蠢的問題。每當我直接從Java代碼創建Anchor時,它將顯示爲「正常鏈接」,因此它是藍色的,帶下劃線的,當我將鼠標指針移到它時,它會從I-Beam切換到正常箭頭。GWT克:錨不顯示爲鏈接

當我使用UiBinder的和定義我的UI是這樣的:

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent"> 
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" 
    xmlns:g="urn:import:com.google.gwt.user.client.ui"> 
    <g:Anchor ui:field="anchor" /> 
</ui:UiBinder> 

結果我得到的是一個藍色的文本,但它既不下劃線也不鼠標指針會變成正常的箭頭,當我將它移動到這個鏈接。我發現的唯一的解決辦法是

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent"> 
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" 
    xmlns:g="urn:import:com.google.gwt.user.client.ui"> 
    <g:Anchor ui:field="anchor" href="javascript:;" /> 
</ui:UiBinder> 

是否有一個「正確」的方法來達到同樣的行爲,而這copypasting屬性href到處?

回答

7

http://code.google.com/p/google-web-toolkit/issues/detail?id=4502

但問題是,如果你沒有一個href來設置就可以了,你不應該使用的錨。如果你想要的東西看起來像一個錨點但沒有鏈接到某個URL,那麼使用帶有適當樣式和一個ClickHandler的Label或HTML;不要濫用錨鏈接的東西,而不是鏈接。