Llamar a un método dentro de una función javascript usando GWT jsni
Frecuentes
Visto 716 veces
0
Lo que quiero es llamar a este código.
public native void eventClickHandler( String id) /*-{
$wnd.jQuery('#' + id).bind('jqplotDataClick',function(ev, seriesIndex, pointIndex, data) {
this.@it.codegen.gwt.jqplot.client.charts.JQChart::onClick(Ljava/lang/String;Ljava/lang/String;)(seriesIndex, pointIndex);
});
}-*/;
Aquí, el método onClick es un método java normal y estoy usando la interfaz GWT y JSNI para esto. ¡Gracias por adelantado!..
1 Respuestas
1
¿Has usado jQuery antes? this
tiene un significado particular dentro de una función pasada a jQuery. Incluso en JSNI, mientras esté en un archivo Java, no se comportará como un archivo Java. this
, pero como un JavaScript this
.
Prueba esto en su lugar:
public native void eventClickHandler( String id) /*-{
var origThis = this;
$wnd.jQuery('#' + id).bind('jqplotDataClick',function(ev, seriesIndex, pointIndex, data) {
origThis.@it.codegen.gwt.jqplot.client.charts.JQChart::onClick(Ljava/lang/String;Ljava/lang/String;)(seriesIndex, pointIndex);
});
}-*/;
contestado el 03 de mayo de 12 a las 17:05
Gracias por la respuesta, pero parece que todavía no funciona, tengo que encontrar una forma de referir métodos dentro de una función jquery. - Shamita Silva
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas gwt jsni or haz tu propia pregunta.
no funciona, lo siento, creo que olvidé mencionarlo. - Shamitha Silva
posible duplicado de GWT/JSNI esto. no se reemplaza con una referencia a la instancia - Thomas Broyer
el uso de
this
es algo arriesgado, ya que se refiere al propietario de la función. es el método JSNI un miembro de un tipo de superposición? adjunte más código de contexto y algunas excepciones generadas, si existen. - Eliran Malka