[英]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.