【问题标题】:WKWebiew not loading html string with parametersWKWebview 不加载带有参数的 html 字符串
【发布时间】:2021-04-27 22:19:54
【问题描述】:

我正在尝试使用 swift 参数加载 html 字符串,但它没有加载

let htmlStr = """
<!DOCTYPE html>
<html>

<head>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src= "'\(jsUrl)'" id="xxxxx"
        data-error="ErrorCallback" data-cancel="CancelCallback" data-complete="CompleteCallback"
        data-timeout="TimeoutCallback">

    </script>

</head>

<body>
    <div style="clear: both;height: 3px;">
    </div>
</body>


<script type="text/javascript">
    CheckoutConfigure();
    Checkout.showLightbox();
    function CancelCallback() {
        AndroidFunction.cancelCallback()
    }

    function ErrorCallback(response) {
        AndroidFunction.errorCallback(JSON.stringify(response))
    }

    function CompleteCallback(response,sessionVersion) {
        AndroidFunction.completeCallback(response, sessionVersion)
    }

    function TimeoutCallback() {
        AndroidFunction.timeoutCallback()
    }

    
</script>

</html>
"""

这里是调用函​​数

webView.loadHTMLString(htmlStr, baseURL: nil)

【问题讨论】:

  • “未加载”是什么意思?
  • 我看到空白的 webview.@matt
  • 为什么会是非空白的?
  • @matt android 中的相同代码正在 webview 中加载
  • 即使在 Safari 和 Chrome 中,此 HTML 文件也会导致网页空白。

标签: ios swift wkwebview


【解决方案1】:

您使用id: "'\(orderId)'" 之类的短语制作了无效的HTML 和JavaScript。假设orderId 是 7。现在我们有

id: "'7'"

真的吗?有两组引号分隔符?这不是有效的 JavaScript。

【讨论】:

  • 你知道javascript吗?如果你写了一本书,我会买它
【解决方案2】:

需要在脚本中用“\n”连接每个段落。像这样 : "" + "\n" ""

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    相关资源
    最近更新 更多