0

この GwtQuery が機能しない理由を理解しようとしています。ラベル要素をどれだけクリックしても動かないのです。

final Element deleteTD = DOM.createTD();                                            
deleteTD.addClassName("center");
Element span2 = DOM.createSpan();                                   
span2.addClassName("label label-danger");                               
span2.setInnerText("Delete");                               
deleteTD.appendChild(span2);


$(editTD).click(new Function() {                                      
public boolean f(Event e) {                                                   
Window.alert("Edit");                                                     
return false;                                                   
}
});                                         

$(deleteTD).click(new Function() {                                                
public boolean f(Event e) {                                                                                   
return false;                                               
}                                                 
});

row.appendChild(editTD);                                    
row.appendChild(deleteTD);                                  
list.appendChild(row);

どれだけクリックしても、window アラートが表示されず、editTD がクリックされたことを示します。

4

3 に答える 3

0

イベント委任を行う必要があると思います。

$(editTD).bind("click", new Function() {
    @Override
    public boolean f(Event e) {
        Window.alert("editTD");
        return true;
    }
});
于 2013-06-17T10:33:04.490 に答える
0

GwtQuery を試したことはありませんが、dom 要素に問題があると思います。Dom要素はapplyイベントの前に追加する必要があるためです。

row.appendChild(editTD);追加する前に追加してみてくださいclick event。それはうまくいくはずです。

イベントの例を参照してください。GwtQuery にも同じことが当てはまります。

于 2013-06-18T06:49:19.457 に答える