私はこのJavaScript
機能を持っています:
function extract(html) {
return html;
}
そして、iPhoneアプリから実行したいので、作成しUIWebView
て追加します:
UIWebView *fullJavaScriptWebView = [[UIWebView alloc] init];
fullJavaScriptWebView.delegate = self;
NSURL *fileUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"] isDirectory:NO];
[fullJavaScriptWebView loadRequest:[NSURLRequest requestWithURL:fileUrl]];
そして UIWebViewDelegate でwebViewDidFinishLoad
:
NSString *html = [self.javaScriptDic objectForKey:@"html"];
NSString *jsCall = [NSString stringWithFormat:@"extract('%@');",html];
NSString *tmp = [webView stringByEvaluatingJavaScriptFromString:jsCall];
そして、私がそれを実行するたびに、tmp は null です。このコードの何が問題なのか分かりますか?
これhtml
は、以前にダウンロードしたウェブサイトの html で、次のような文字が含まれています。