gpt4 book ai didi

java - GWTquery 事件监听器不工作

转载 作者:行者123 更新时间:2023-12-02 07:19:40 26 4
gpt4 key购买 nike

我正在尝试向这样的元素添加一个简单的点击监听器:

$(".choice_span").bind(Event.ONMOUSEUP, new Function() {
public boolean f(Event E) {
Window.alert("foo");
return true;
}
});

但是当我点击时,没有任何反应(所有导入都很好,没有问题)。所以我认为我可能应该等待所有元素加载。所以我把它改为:

Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand () {
public void execute () {
$(".choice_span").bind(Event.ONMOUSEUP, new Function() {
public boolean f(Event E) {
Window.alert("foo");
return true;
}
});
}
});

但是点击监听器仍然无法工作。我认为 GWTquery 没有问题,因为如果我用 $(".choice_span").text("foo") 替换事件处理程序,所有此类跨度都会将其文本更改为 页面加载时使用 foo。谁能告诉我这里可能出了什么问题?

最佳答案

您必须确保您定位的元素位于 dom 中。如果您正在使用小部件,则可以将小部件作为查询的上下文传递

$(".choice_span", myWidget).bind(...)

或者在附加小部件时执行查询:

myWidget.addAttachHandler(new Handler() {
@Override
public void onAttachOrDetach(AttachEvent event) {
if (event.isAttached()) {
$(".choice_span").bind(Event.ONMOUSEUP, ...);
} else {
$(".choice_span").bind(Event.ONMOUSEUP);
}
}
});

如果您想监听点击,我建议您使用 click() 方法。

关于java - GWTquery 事件监听器不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14426195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com