我正在使用 GWTQuery 来检测paste
文本框上的事件,然后设置一个小计时器,之后它应该获取粘贴在其中的值。像这样的东西:
$("#paste").live("paste",new Function() {
public boolean f(Event e) {
Timer t = new Timer() {
public void run() {
String text = paste.getText();
String oldtext = box.getText();
String oldsel = box.getSelectedText();
int oldpos = box.getCursorPos();
if (text.matches("^\\d+$")) {
box.setText(oldtext.substring(0,oldpos)+text+oldtext.substring(oldpos+oldsel.length(),oldtext.length()));
oldpos += text.length();
}
box.setReadOnly(false);
box.setFocus(true);
box.setCursorPos(oldpos);
paste.setText("");
}
};
t.schedule(5);
return true;
}
});
当我将它包含在主文件中时(onModuleLoad
声明的地方,即显示在浏览器中的文件),它按预期工作。但是,我已经对代码进行了划分,将文本框放在它们自己的包中,并调用initWidget
将它们导入到主文件中。当我将此代码放在该类中时,我收到类似 的错误消息Uncaught exception escaped
,它指向类似
com.google.gwt.sample.myproject.client.Location$3$1.run
. 谁能告诉我这里出了什么问题,我该如何纠正?