小编典典

知道何时将AJAX加载到UIWebView中

ajax

我有UIWebView一个页面,一个页面包含一个AJAX组件,当用户单击一个按钮时,其内容会更改。我如何知道内容何时加载到UIWebView


阅读 231

收藏
2020-07-26

共1个答案

小编典典

您需要做两件事:

  1. 在您的JavaScript代码中,XMLHTTPRequest发出带有自定义URL的AJAX请求已完成的信号:
        var req = new XMLHttpRequest();  
    req.open('GET', 'http://www.mozilla.org/', true);  
    req.onreadystatechange = function (aEvt) {  
      if (req.readyState == 4) {  
         if(req.status == 200) { 
           window.location = "myspecialurl:foo"
         }
      }  
    };  
  1. 在您的本机代码中,您需要实现一个UIWebView侦听此自定义URL 的委托:
        - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
    {
      if([[[request URL] absoluteString] isEqualToString:@"myspecialurl:foo"]) {
         // Your code for when the AJAX request completes.
         return NO;
      }
      return YES;
    }

不能保证此代码可以解析/编译,但应为您提供实现方法的思路。

2020-07-26