[英]Calling AngularJS controller function from ios uiwebview
我有dashboard.html页面,并且DashboardController.js与dashboard.html相关联。 我正在UIWebview中加载页面,现在我想从uiwebview的DashboardController.js中调用angularjs函数。 它不会被调用。
以下是我在iOS中尝试的代码
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
NSURL *url = [request URL];
NSLog(@"URL:%@",url);
if (![Utility isInternetAvailable]) {
return FALSE;
}
NSString *jsCallBack = [NSString stringWithFormat:@"DashboardController.test()"];
NSString *response = [webView stringByEvaluatingJavaScriptFromString:jsCallBack];
NSLog(@"%@",response);
return YES; // Return YES to make sure regular navigation works as expected.
}
在确保已将dashweb.html加载到uiwebview中之后,我也尝试了没有Controller引用的情况。 NSString * jsCallBack = [NSString stringWithFormat:@“ test()”];
虽然test()是DashboardController.js范围内的js函数。
function test (){
alert('sendCredentialsToNativeApp');
}
提前致谢。
如果在控制器JS中定义了没有控制器引用的方法,则应调用此test()方法。 但是,这仅在页面就绪状态之后可用,因为您无法从控制器调用任何方法,直到其完全加载。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.