0

我正在 viewDidLoad 的 UIWebView 上加载 URL。

- (void)viewDidLoad
{
   [super viewDidLoad];
   [webView loadRequest:[NSURLRequest requestWithURL:[NSURL      
   URLWithString:@"http://abc.com/Test.html"]]];
}

然后在 NSTimer 上,我运行以下命令来执行 javascript。对 JavaScript 的调用运行良好。

-(void)WebViewLoad:(NSTimer *)theTimer
{

    NSString *abcFiles  = [webView stringByEvaluatingJavaScriptFromString:@"abc.length"];
    NSLog(@"The TotalNumberOfFiles is %i",abcFiles); //This works
//--------------------------------------------------------
    NSString *currentURL = webView.request.URL.absoluteString;
    NSLog(@"Current url 1 is %@",currentURL);

   [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://abc.com/newpage.html"]]];
   [self.view addSubview:webView];


   NSString *currentURL2 = webView.request.URL.absoluteString;
   NSLog(@"Current url 2 is %@",currentURL2);
}

注释行上方的所有内容都有效。但是添加新 URL 的部分,我仍然得到初始 URL。我尝试添加重新加载。它不起作用。尝试创建一个也不起作用的新 UIWebView 对象。

结果是

Current url 1 is http: //abc.com/Test.html 
Current url 2 is http: //abc.com/Test.html

我想

Current url 1 is http: //abc.com/Test.html
Current url 2 is http: //abc.com/newpage.html

另一个问题是“我们可以从代码中加载一个新的 URL。它不是通过按钮或任何操作来的。它来自一个循环计时器。这是一个问题吗?”

4

1 回答 1

0

您没有看到您期望的请求的原因是,直到请求完全加载后,属性才会更改,包括所有重定向request资产UIWebViewloadRequest:

于 2013-06-26T21:32:41.553 回答