Javascript 从UIWebView隐藏元素

Javascript 从UIWebView隐藏元素,javascript,ios,uiwebview,uiwebviewdelegate,Javascript,Ios,Uiwebview,Uiwebviewdelegate,我有一个UIWebView,其中我加载了一个NSURLRequest。我不能完全控制所显示页面的html,但我知道它将包含一个元素,该元素的id是我事先知道的。假设它是submmit\u form\u按钮 我不希望应用程序的用户看到此元素。我想在用户在UIWebView中看到它之前将其隐藏 这样做的最佳选择是什么?在显示UIWebView的控制器中,我应该将解决此问题的代码放在哪里? 我知道我可以使用Javascript来实现这一点。我更关心的是,在显示UIWebView的本机iOS应用程序的上

我有一个
UIWebView
,其中我加载了一个
NSURLRequest
。我不能完全控制所显示页面的html,但我知道它将包含一个元素,该元素的id是我事先知道的。假设它是
submmit\u form\u按钮

我不希望应用程序的用户看到此元素。我想在用户在
UIWebView
中看到它之前将其隐藏

这样做的最佳选择是什么?在显示
UIWebView
的控制器中,我应该将解决此问题的代码放在哪里?
我知道我可以使用Javascript来实现这一点。我更关心的是,在显示
UIWebView
的本机iOS应用程序的上下文中,如何实现这一点,该应用程序从外部源获取html。

根据@Ric的评论,我解决了这个问题

- (void)webViewDidFinishLoad:(UIWebView *)webView {
    [webView stringByEvaluatingJavaScriptFromString:@"document.getElementById('submmit_form_button').style.display = 'none'"];
}

根据@Ric的评论,我用

- (void)webViewDidFinishLoad:(UIWebView *)webView {
    [webView stringByEvaluatingJavaScriptFromString:@"document.getElementById('submmit_form_button').style.display = 'none'"];
}

用“;”在同一单独行中隐藏多个项目

以下是Swift中的示例:-

let items = "document.getElementById('item_1').style.display='none';" 
            + "document.getElementById('item_2').style.display='none'"

webView.stringByEvaluatingJavaScript(from: items)

用“;”在同一单独行中隐藏多个项目

以下是Swift中的示例:-

let items = "document.getElementById('item_1').style.display='none';" 
            + "document.getElementById('item_2').style.display='none'"

webView.stringByEvaluatingJavaScript(from: items)

通过在页面加载后从UIWebView执行JavaScript。通过在页面加载后从UIWebView执行JavaScript。