2012-12-02 85 views
0

我有一個在viewDidLoad中事件加載網站網頁視圖:UIWebView LoadRequest只能使用一次?

這工作不錯。 在這個頁面上,我有一些元信息,例如剛剛顯示的產品的ID。

現在我有我的應用程序一個UIButton,當我點擊它,下面的代碼被執行:

-(IBAction)buttonClick:(id)sender{ 
NSString *lastId = [webView2 stringByEvaluatingJavaScriptFromString:@"document.getElementById('iphone-4').innerHTML;"]; 


NSString *fullURL = [NSString stringWithFormat:@"http://www.mypage.net/geschenke/allproducts.php?lastId=%@&likeIt=0", lastId]; 




NSURL *websiteURL = [NSURL URLWithString:fullURL]; 

NSLog(fullURL); 

NSURLRequest *requestObj = [NSURLRequest requestWithURL:websiteURL]; 
[webView2 loadRequest:requestObj]; 
} 

正如你所看到的,我加載相同的頁面,但隨着新的參數(lastID和喜歡它)。 我使用stringByEvaluatingJavaScriptFromString來輕鬆解析ID。

NSLog(fullURL)命令記錄了正確的 url!當我將其複製並粘貼到瀏覽器中時,它可以正常工作。

源代碼本身也適用。當我加載www.google.de時,webView導航到新頁面。

任何想法?

謝謝你!

+0

,你可以登錄到一個UIWebView委託方法的一些信息,看是否完成的負載或失敗,錯誤回調被調用。這可能會給你一些更多的信息。 – Bergasms

+0

此外,NSURLRequest還有一個可以設置的緩存策略,您可以告訴它忽略任何緩存的版本,這些緩存版本可能會被拉入。蘋果緩存有時似乎很安靜神祕。 – Bergasms

回答

0

嘗試忽略緩存:

[NSURLRequest requestWithURL:websiteURL cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:0.0]