似乎有很多关于如何使用javascript提交表单的信息,但我正在寻找一个解决方案,以捕获何时提交表单并在javascript中拦截它.
HTML
<form>
<input type="text" name="in" value="some data" />
<button type="submit">Go</button>
</form>
Run Code Online (Sandbox Code Playgroud)
当用户按下提交按钮时,我不希望提交表单,而是希望调用JavaScript函数.
function captureForm() {
// do some stuff with the values in the form
// stop form from being submitted
}
Run Code Online (Sandbox Code Playgroud)
快速入侵是为按钮添加一个onclick功能,但我不喜欢这个解决方案......有很多方法可以提交表单...例如,在输入时按回车键,这不考虑.
泰
我有一个使用flutter_webview_plugin在Flutter Webview中加载的html文件。我正在使用evalJavascript在我的JavaScript代码中调用函数,这意味着flutter(dart)-> js。但是,我还需要某种方法将某些内容传达回flutter(dart)层,这意味着js-> flutter(dart)。
我尝试使用-webkit.messageHandlers.native-window.native来支持两个平台(Android,iOS),检查它们是否在JS中可用。但是,这些是不确定的。使用以下代码获取JS中本机处理程序的实例。
typeof webkit !== 'undefined' ? webkit.messageHandlers.native :
window.native;
Run Code Online (Sandbox Code Playgroud)
即使我得到该实例并使用它发布消息,也不确定如何在flutter(dart)层中处理它。我可能需要使用平台渠道。不确定,如果我的方向正确。
有什么办法可以做到这一点?我已经评估了Interactive_webview插件。它在Android上运行良好。但是,它具有快速的版本控制问题,因此不希望进一步进行。
任何帮助,将不胜感激。