如何根据数组中的值隐藏和显示DIV?
我已经弄清楚如何使用以下内容编辑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\">'"];
}
然后我有一个NSArray,其中填充了一个人所属的Active Directory组。使用与另一个应用绑定的库从钥匙串中拉出此数组,并根据他们所在的群组为每个人填充不同的数据。
所以,现在我需要弄清楚如何在UIWebView中显示和隐藏DIV,具体取决于他们是否在特定组中。我为每个DIV标记了一个唯一的ID,因此我正在思考“getElementById&#39;将用于识别哪个DIV是哪个。但是我如何匹配它们:
if(NSArray contains thisValue) {
divID.visible = show;
} else {
divID.visible = hide;
}
编辑:我最终将数组中的值添加到查询字符串中,并使用javascript根据它在查询字符串中找到的内容来评估和显示/隐藏不同的div。
答案 0 :(得分: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。