簡體   English   中英

GWT。以編程方式在ListBox上Fire ChangeEvent。

[英]GWT. Fire ChangeEvent on ListBox programmatically.

我想以編程方式觸發ListBox的ChangeEvent 我找到了函數,但是不知道我需要傳遞什么類型的參數:

DomEvent.fireNativeEvent(NativeEvent - where???, listBox());

您可以使用以下命令在窗口小部件上觸發本機ChangeEvent:

DomEvent.fireNativeEvent(Document.get().createChangeEvent(), yourListBox);

這是一個老問題,但我想分享我的解決方案,因為它只適用於我(gwt.version = 2.6.1和com.github.jdramaix gwtchosen version = 1.2.0)

public class ChosenListBoxNew extends ChosenListBox {
    public ChosenListBoxNew() {
    super();
    }

    public void fireUpdateEvent(){
    ensureChosenHandlers().fireEvent(new ChosenChangeEvent(this.getValue(), this.getSelectedIndex(), null));
    }
}

您可以通過調用新類的fireUpdateEvent()來觸發更新事件:

moduleSelectionLst.setSelectedIndex(-1); //Update selected value
moduleSelectionLst.update(); //Update UI
moduleSelectionLst.fireUpdateEvent();  // Fire update event

可以使用JSNI觸發事件:

public native void fireOnChange(String elementId)/*-{
    var element = $doc.getElementById(elementId);
    if ( element )
        element.onchange();
}-*/;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM