【问题标题】:Code=102 "Frame load interrupted" when I load a NSstring as a html Iphone当我将 NSstring 作为 html Iphone 加载时,代码 = 102“帧加载中断”
【发布时间】:2011-11-16 13:57:50
【问题描述】:

我正在为 iphone/ipad 开发一个应用程序,但我遇到了一些问题。

我正在使用 html 代码动态构建一个 nsmutablestring,并将其作为 html 加载到 uiwebview。我还将一个本地 js 文件加载到这个 html 页面,其中我有一些逻辑功能。 在这个 html 中,我得到了一个最后带有提交按钮的表单。

我想要做的是,在单击提交按钮的那一刻,它会调用一个方法,将字符串返回给 Objective-c 代码。我对控制表单的javascript没有问题。但是当点击提交按钮时,本机代码给了我

Error Domain=WebKitErrorDomain Code=102 "Frame load interrupted" UserInfo=0x6c60b20 {NSErrorFailingURLKey=file://

我尝试在 js 函数中重定向,例如 window.location="myapp:custom:"+string;但我遇到了同样的问题。甚至尝试像 JSBridge api 这样的库。

我怀疑这是因为我正在将 NSString 加载到 webview 中,该 webview 的 baseUrl 是用于加载本地 js 文件的 mainbundle 路径。

NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];
[self.webView loadHTMLString:string baseURL:baseURL];

【问题讨论】:

  • 你给 loadHTMLString 的字符串是什么?
  • 是html代码。但我实际上发现了问题所在。使用虚假 url 的解决方法不适用于输入提交,但适用于输入按钮。所以它现在正在工作。

标签: objective-c uiwebview nsstring


【解决方案1】:

我只需要在 html 代码中使用输入按钮更改输入提交即可。所以现在我把 javascript 中的字符串返回到了 Objective-c。

【讨论】:

    猜你喜欢
    • 2020-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多