Calling javascript from objective-c code

2019-02-07 14:10发布

I found a lots of ways to call objective-c code from javascript, but I want to call the javascript code from objective-c. Last time I submitted a HTML FORM from objective-c, and now I wan't to call a javascript method. What do you think, is there any way to call it and get the response? I am interested in any solution, but I started to think and I think I need to send a html call or something like this, but I am not sure about this because the javascript is client side code, so maybe I need to process it from my objective-c code. What do you think about this?

2条回答
\"骚年 ilove
2楼-- · 2019-02-07 14:43

Are you looking for UIWebView's stringByEvaluatingJavaScriptFromString: method?

This lets you run JS code inside of the sandbox of a web view, from Objective-C.

查看更多
Anthone
3楼-- · 2019-02-07 14:48

Sounds like you are using a WebKit embedded in your app to link JavaScript to your "native" Obj-C code right?

If so you simply do this:

    NSString* script = @"function __wrapper() { return (typeof webNodeEvent == \"function\") } __wrapper();";

    id resultObj = [nodeScriptObject evaluateWebScript:script];

    if ([resultObj boolValue]) { // its there, call it

        [nodeScriptObject callWebScriptMethod:@"webNodeEvent" withArguments:[NSArray arrayWithObject:eventType]];

    }

The nodeScriptObject is from the WebView and is just the JavaScript object.

查看更多
登录 后发表回答