2014-02-06 32 views
0

如何根据数组中的值隐藏和显示DIV?基于钥匙串在UIWebView中显示和隐藏DIV iOS Xcode

我已经找到了如何使用编辑在一个UIWebView一个DIV如下:

-(void)webViewDidFinishLoad:(UIWebView *)jsWebView 
{ 
    // Replace the <div id="footer"> in a webpage with an <img> instead. 
    NSString *jsStuff = [jsWebView stringByEvaluatingJavaScriptFromString:@"document.getElementById('footer').innerHTML='<img src=\"http://url.to.image.png\">'"]; 
} 

然后我有一个填充了Active Directory组一个人的成员一个NSArray。这个数组是从钥匙串中使用一个绑定到另一个应用程序的库中提取的,并且对于每个人而言都是不同的,这取决于他们在哪个组。

因此,现在我需要弄清楚如何显示和隐藏DIV UIWebView基于它们是否在特定的组中。我有每个DIV标有一个唯一的ID,所以我想'getElementById'将用于标识哪个DIV是哪个。但我怎么使她们与此类似:

if(NSArray contains thisValue) { 
divID.visible = show; 
} else { 
divID.visible = hide; 
} 

编辑:我结束了从阵列到查询字符串添加值,并使用JavaScript来评估和显示/隐藏基于其不同的div在查询字符串中找到。

回答

0

同样的方法,使用stringByEvaluatingJavaScriptFromString方法。一个基本的例子是:

if(NSArray contains thisValue) { 
    // show 
    [jsWebView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.getElementById('%@').style.display='block'", divID]]; 
} else { 
    // hide 
    [jsWebView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.getElementById('%@').style.display='none'", divID]]; 
} 

其中divID是NSString与您想要的div id。