如何将字符串注入 Android WebView
How to inject a String into Android WebView
我正在加载一个简单的网页,其中包含一个名为"AddSerialNum"的文本字段
<form>
Serial Number: <input type="text" name="AddSerialNum">
</form>
然后我尝试用我从 Android 中的条形码扫描结果中获得的字符串填充该字段:
public void onActivityResult(int requestCode, int resultCode, Intent data) {
String contents = null;
//Call Clipboard and assign service to var.
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
//Set contents = to scan result
contents = data.getStringExtra("SCAN_RESULT");
//Format scan result
@SuppressWarnings("unused")
String format = data.getStringExtra("SCAN_RESULT_FORMAT");
//Copy Data to clipboard
ClipData clip = ClipData.newPlainText("serial", contents);
clipboard.setPrimaryClip(clip);
//Toast - message states copy was successful with serial number
Toast.makeText(this, "Copied " +contents , Toast.LENGTH_LONG).show();
// Handled a successful scan
//Put the results in the box!
browser.loadUrl("javascript:document.getElementByID('AddSerialNum').value = '"+contents+"';");
} else if (resultCode == RESULT_CANCELED) {
// Cancellation action
}
}
}
吐司通知出现,条形码的序列号作为主剪辑复制到剪贴板,但为什么不填写 html 文件上的表单?
我觉得我错过了什么,但我的眼睛很疲倦,这让我感到沮丧。有人知道如何提供帮助吗?
提前感谢!
自己找到了答案。
应使用以下代码。
browser.loadUrl("javascript:document.forms[0].AddSerialNum.value = '"+contents+"';");
似乎您必须按节点导航到该字段,而不仅仅是最后一个字段。
相关文章:
- window.onload没有'无法在Android WebView中工作
- Android Webview通过Javascript注入CSS
- 在Android WebView中通过javascript检测点击HTML选项标记
- 用JavaScript替换Android WebView模板上的html文本
- Hammer.js阻止在Android Webview中点击超链接
- 在Android WebView中运行Javascript-onPageFinished循环
- Chrome 50的Android WebView在触摸页面之前会阻止Javascript
- HTML5画布支持和Android Webview
- 带有javascript的HTML没有加载到android webview中
- 带有iframe嵌入的Android WebView;t显示在4.2.2及以下
- 如果没有互联网连接,Android WebView离线消息
- Android Webview没有'有时不会加载HTML
- 如何在Android WebView中嵌入Youtube视频
- 检查登录错误Android WebView Javascript
- Injecting JQuery into Android Webview
- 为什么可以't我在Android WebView onLayout中设置了最大宽度
- Android Webview触摸内容
- 了解 Android webview JavaScript 界面
- 控制在 Android WebView 中执行的 JS
- 在 Android WebView 中过滤 DOM 元素,而无需 jQuery