UIWebview javascript桥

时间:2012-12-07 12:58:02

标签: javascript objective-c uiwebview

我应该在Objective C和javascript代码之间进行通信,我还想将目标c中的对象返回给js和js回到目标c。为此,我使用了一个名为Webviewjavascriptbridge的库。但我无法从目标c获得返回值到js。有人可以告诉我是否有其他库可以实现这一目标?我尝试使用此链接iOS JavaScript bridge中提到的库,但我无法从目标c获得返回值到js。

3 个答案:

答案 0 :(得分:3)

JSBridge是一个易于使用的库,可以在JScocoa / Objective - c`之间进行通信。

http://code.google.com/p/jsbridge-to-cocoa/

如果您想通过应用向Javascript发送消息,那么UIWebView会为您提供一种方法。这是我实现的用于将webview中的填充数据分配给客户的代码。

NSString *jsSave=[NSString stringWithFormat:@"set_customer(%@);",self.customer.customerId];
[webView stringByEvaluatingJavaScriptFromString:jsSave]; 

set_customer是JS的方法。

答案 1 :(得分:2)

答案 2 :(得分:0)

您需要从ObjCjs的返回值。也许这意味着您的js代码需要ObjC代码提供的参数。然后你可以试试这个:

NSString *returnValue = [self someMethod];
NSString *jsCallBack = [NSString stringWithFormat:@"yourJsMethodName:('%@')", returnValue];
[webView stringByEvaluatingJavaScriptFromString:jsCallBack];

这就是你想要的吗?我希望它有所帮助。