我正在创建一个应用程序,并且是一个相对较新的Objective C程序员。在页面上," test.php",我有一个javascript变量。这是一个简化版本。
<script>
var idx = 45;
document.write(idx);
</script>
我希望能够查看变量&#34; idx&#34;的值。在我使用Xcode创建的IOS应用程序中。什么是连接到页面test.php的最佳方式,并将我的Javascript变量传输到Objective C,以便我可以将它用作我的IOS应用程序的一部分?
非常感谢任何帮助。谢谢。
答案 0 :(得分:0)
您需要使用两个部分的组合在webview和本机代码之间进行通信。首先,你需要&#34;触发&#34; webview通过在webview上调用stringByEvaluatingJavaScriptFromString:
来返回一些值。当webview尝试通过javascript调用进行导航时,您可以使用WebView的shouldStartLoadWithRequest:
方法在本机端拦截它。
有关详细信息,请参阅此处的详细信息Invoke method in objective c code from HTML code using UIWebView
仅当您需要在webview中使用某些活动来触发提取时(或通知本机代码已设置该值)。如果值始终可以通过JS获得,则可以使用stringByEvaluatingJavaScriptFromString:
,如下所示:
NSString *returnvalue = [self.webviewForHtml stringByEvaluatingJavaScriptFromString:@"var idx = "return_value";return idx;"];