Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
调用注入的java脚本';来自GWT的s函数_Java_Javascript_Jquery_Gwt_Javascript Injection - Fatal编程技术网

调用注入的java脚本';来自GWT的s函数

调用注入的java脚本';来自GWT的s函数,java,javascript,jquery,gwt,javascript-injection,Java,Javascript,Jquery,Gwt,Javascript Injection,我有GWT应用程序、html文件和javascript文件。在GWT应用程序中,我在GWT html面板中加载html文件,然后在该面板上注入javasript。我定义了两个功能,如“提交”、“取消”等。。在javasript文件中。我在GWT客户端页面中也有相应的按钮。现在,当我点击gwt客户端页面上的提交按钮时,它应该调用javascript文件的“提交”功能 javascript文件中的代码: $('#submitButton').click( function () { al

我有GWT应用程序、html文件和javascript文件。在GWT应用程序中,我在GWT html面板中加载html文件,然后在该面板上注入javasript。我定义了两个功能,如“提交”、“取消”等。。在javasript文件中。我在GWT客户端页面中也有相应的按钮。现在,当我点击gwt客户端页面上的提交按钮时,它应该调用javascript文件的“提交”功能

javascript文件中的代码:

$('#submitButton').click( function () {
      alert('submit clicked');
      dosomething();
    }
  });
我已经在GWT客户端页面中尝试使用JSNI,如下所示

public native JavaScriptObject submitForm()/*-{
        return $doc.submitButton(); // tried with $wnd.submitButton() as well.
    }-*/;
但它不工作,并抛出以下错误

com.google.gwt.event.shared.UmbrellaException: Exception caught: (TypeError)  $doc.submitButton is not a function

错误似乎很明显-您正在调用
submitButton
,这不是一个函数(它可能是
未定义的
,除非您在显示的代码之外做了其他操作)。您可能应该这样做:
$wnd.jQuery('submitButton')。单击()

谢谢Igor。根据您的建议,现在我并没有得到错误,但它也并没有命中javascript函数。我尝试使用$wnd.jQuery(“#submitButtonDoesNotExist”).click()等随机名称。我希望出现一些错误,但没有错误,什么也没有发生。您能从Javascript控制台(Firebug、Chrome Developer Tools等中的控制台)触发单击吗?只需将jQuery(“#submitButton”)放在那里。单击()(此处不需要
$wnd
部分)。当您尝试触发来自GWT的调用时,您是否检查过DOM中确实有一个id为
submitButton
的元素?谢谢Igor。在html文件中添加了一个id为submitButton的元素,它也起了作用。