首页 > 解决方案 > 在 WKWebView 中评估javascript方法返回错误

问题描述

我正在尝试通过 WKWebView 中的 javascript 提交 HTML 表单,该表单具有隐藏的输入类型。

__weak typeof(self) weakSelf = self;
NSString *submitFormJavascript = [NSString stringWithFormat: @"window.onload = function() { document.getElementById('%@').submit(); }", self.formName];
    [self.webView evaluateJavaScript: submitFormJavascript completionHandler:(NSString *result, NSError *error) {
    CPFLogError(@"javascript execution error: %@", error);
    
    [weakSelf handleError:error];
}];

我得到的 NSError

Error Domain=WKErrorDomain Code=5 "JavaScript execution returned a result of an unsupported type" UserInfo={NSLocalizedDescription=JavaScript execution returned a result of an unsupported type

任何帮助将不胜感激。提前致谢

标签: iosobjective-cswiftwkwebview

解决方案


evaluateJavaScript方法试图将 JS 代码的结果传递给您,以防undefined您没有明确的返回。如果您 return true使用 JS 代码,它应该可以正常工作。


推荐阅读