gpt4 book ai didi

java - 将字符串从 Java 传递到 Javascript 函数

转载 作者:行者123 更新时间:2023-11-30 11:23:00 24 4
gpt4 key购买 nike

我是 Phone gap 和 Java 脚本的新手。如果有人提供样本或建议,那将大有帮助。

异常:我得到以下异常:未捕获类型错误:对象 [对象对象] 没有方法 'getName'

public class ViewerActivity extends DroidGap {
private CordovaActivity mGap;
private WebView mWebView;

WebView mWebView;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);


mWebView=new WebView(this);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.addJavascriptInterface(new JavaScriptInterfaceClass (), "jsinterface");
mWebView.loadUrl("file:///android_asset/www/sample.html");
}


}

Java 脚本接口(interface)类:

public class JavaScriptInterfaceClass {
public WebView mAppView;
public DroidGap mGap;


public JavaScriptInterfaceClass(DroidGap gap, WebView view) {
this.mAppView = view;
this.mGap = gap;

}

public String getName() {


return "android";
}
}

HTML:

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="css-js/jquery.mobile-1.0a3.min.css" />
<script src="css-js/jquery-1.5.min.js"></script>
<script src="css-js/jquery.mobile-1.0a3.min.js"></script>
</head>
<body>

<script>
function myFunction()
{
var name = jsinterface.getName();
alert("Hello! I am an alert box!"+name);
}
</script>
<input type="button" onclick="myFunction()" value="Show alert box" />
</body>
</html>

最佳答案

类名错误。正确的应该是

mWebView.addJavascriptInterface(new JavaScriptInterfaceClass(), "jsinterface");
^

关于java - 将字符串从 Java 传递到 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21449147/

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