我希望将一个HTML元素的值传递给一款Android应用程序。我尝试使用以下代码检索该值:
我想实现JavaScript MutationObserver。这样,只要内容发生变化,我就可以立即将值传递给Android Java代码。
有人能帮助我吗?
我使用了以下代码:
这是我的HTML代码:
document.getElementById(\"summary\").value --> giving null value
document.getElementById(\"summary\").innerHtml --> giving null value
document.getElementById(\"summary\").textContent --> giving null value
我想实现JavaScript MutationObserver。这样,只要内容发生变化,我就可以立即将值传递给Android Java代码。
有人能帮助我吗?
我使用了以下代码:
myWebView = (WebView)this.findViewById(R.id.myWebView);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.loadUrl("https://helloworld.com/details");
myWebView.addJavascriptInterface(new JavaScriptInterface(this, myWebView), "MyHandler");
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
myWebView.setWebContentsDebuggingEnabled(true);
}
myWebView.evaluateJavascript("(function(){return document.getElementById(\"summary\").textContent})();",
new ValueCallback<String>() {
@Override
public void onReceiveValue(String html) {
Log.e("HTML Content",html);
}
});
这是我的HTML代码:
<div class="well" id="summary" *ngIf="viewModel != null">
<div class="SuccessSummary">{{viewModel.successSummary}}</div>
</div>
MyHandler
添加到网页。那个关键字会在值改变时向您发送响应。 - Manoj Perumarath