我试图在GWT中从我的java调用我的Javascript方法 以下是我正在做的事情
public void onModuleLoad() {
jsniAlert("test");
}
private static final native void jsniAlert(String test) /*-{
$wnd.alert(test);
$wnd.testJavascript();
}-*/;
HelloJSNI.html(用于在war文件夹中打开我的应用程序的主要html类)
<script type="text/javascript" language="javascript"
src="hellojsni/hellojsni.nocache.js"></script>
<script type="text/javascript">
function testJavascript(var input) {
window.jsniAlert();
var var1inJS = "Default value";
alert("Value of Var1 = " + var1inJS);
var1inJS = input;
alert("Value of Var1 = " + var1inJS);
var var2inJS = "Waht is the value of Var2";
alert("Value of Var2 = " + var2inJS);
}
但是当我运行我的应用程序时会出现异常
javascriptexception:object doesn't support property or method 'testjavascript'
答案 0 :(得分:1)
您的testJavascript
功能出错,因此无法加载,也无法调用。
改变这个:
function testJavascript(var input) {
到这个
function testJavascript(input) { //notice that var keyword is not used to define parameters
答案 1 :(得分:0)
您的javascript函数未加载。 在浏览器中,当浏览器在脚本标记之间删除代码中的错误时,内部代码将不会被加载,并且可能导致意外结果。