2012-03-12 13 views

Respuesta

27

Usted puede disparar un ChangeEvent nativo en un widget usando:

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

Este único evento de incendio y no cambia el elemento seleccionado. –

+2

Saeed Zarinfam: establece el elemento en primer lugar, luego activa el evento usando el consejo de Strelok. – Vlad

0

Se vieja pregunta, pero quiero compartir mi solución, porque es único que funciona para mí (gwt.version = 2.6.1 y com.github.jdramaix versión gwtchosen = 1.2.0)

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

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

y se puede desencadenar el evento de actualización llamando fireUpdateEvent() de nuevo clase:

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

Es posible disparar evento usando JSNI:

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