2016-06-04 24 views
-2

Ich versuche, einen Wert von meiner Webseite zu bekommen. Wenn ausführen ich zum ersten Mal null zurückgibt, aber wenn ich eine andere Zeit zurückkehrt richtigen Wert ausführen ...Holen Sie sich Inhalt von der Webseite

NSString *urlString = @"http://localhost/app/check.aspx"; 
NSURL *url = [NSURL URLWithString:urlString]; 
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url]; 
[_WebView loadRequest:urlRequest]; 
NSString *html = [_WebView stringByEvaluatingJavaScriptFromString: @"document.getElementById('Contador').textContent"]; 
UIAlertView *alert = [[UIAlertView alloc]initWithTitle: @"Avisos Activos" 
               message:html 
               delegate: self 
            cancelButtonTitle:@"Cancel" 
            otherButtonTitles:@"OK",nil]; 

[alert setTag:1]; 
[alert show]; 
+1

'loadRequest' *„eine Verbindung zu einer bestimmten URL durch eine asynchrone Client-Anforderung zu initiieren.“* - das bedeutet, dass Ihr Javascript ausgewertet In einem ungültigen Kontext, in dem die Anfrage noch nicht abgeschlossen wurde, wurde das DOM noch nicht ausgefüllt. – luk2302

Antwort

1

Sie benötigen die die Web-Ansicht einen Delegaten hinzuzufügen und für den Rückruf warten, die Sie die Seite zu laden erzählt hat Fertig, das können Sie Ihr JavaScript ausführen.

Im Idealfall würde man einen Web-Service hat die Daten, anstatt zu bekommen ...

+0

Danke. Ich werde es versuchen. Es ist meine erste App auf iOS – kujrv1

Verwandte Themen