Jim
Jim

Reputation: 9234

iPhone: call JS function

in webViewDidFinishLoad: I have a code:

NSString *functionCall = [NSString stringWithFormat:@"setString(%@)", @"string"];
[self.myWebView stringByEvaluatingJavaScriptFromString:functionCall];

And in Java Script:

function setString(string) {
    alert(string);
}

but I dont see alert when webView finished load...What I do wrong ? Thanks.

Upvotes: 0

Views: 128

Answers (2)

Felix
Felix

Reputation: 35384

Try inserting quotation marks:

NSString *functionCall = [NSString stringWithFormat:@"setString('%@')", @"string"];
[self.myWebView stringByEvaluatingJavaScriptFromString:functionCall];

Upvotes: 1

Nick Weaver
Nick Weaver

Reputation: 47231

You are trying to invoke an Objective-C method. You have to pass javascript code to the stringByEvaluatingJavaScriptFromString method.

What you likely want to do is something like this:

NSString *functionCall = [NSString stringWithFormat:@"alert('%@');", @"string"];

[self.myWebView stringByEvaluatingJavaScriptFromString:functionCall];

Upvotes: 1

Related Questions