我有一个在Swift中开发的基本iOS应用程序。我正在使用WkWebView
加载我的网站,并且需要在更改页面之前获取输入值,以便我可以将其保存到NSUserDefaults
。
我可以使用以下内容简单地填充输入值:
webView.evaluateJavaScript("document.getElementById('myInput').value = 'Test';") { (result, error) in
if error != nil {
print(result)
}
虽然如何从WKWebView获取输入值?
答案 0 :(得分:0)
尝试添加java脚本以捕获webview中的更改,并将数据异步发送到wkconfiguration委托以收集数据。
将JS添加到wkwebkit意味着很多控制,即使你也可以添加jquery。
这只是您可以创建想法的提示。
-
(void) addJSScriptToWebConfig
{
NSString *JS = ...;
WKWebViewConfiguration *webViewConfig = [[SBWKWebViewConfiguration sharedInstance] configuration];
WKUserScript *script3 = [[WKUserScript alloc] initWithSource:JS injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES];
[webViewConfig.userContentController addUserScript:script3];
[webViewConfig.userContentController addScriptMessageHandler:self
name:@"callbackFunc"];