Calling javascript from objective-c code

╄→尐↘猪︶ㄣ 提交于 2019-11-29 15:43:43

问题


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?


回答1:


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.




回答2:


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.



来源:https://stackoverflow.com/questions/2463710/calling-javascript-from-objective-c-code

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!