2016-01-22 53 views
0

我想加載到WebView只有一個div與編號爲results的所有網站。在Android WebView中只加載一個div

我已經嘗試添加這樣的JavaScriptInterface:

 webView.setJavaScriptEnabled(true); 
     webView.addJavascriptInterface(this, "android"); 

     @JavascriptInterface 
     public void onData(String value) { 
       webView.loadData(value, "text/html", null); 
     } 

而且我WebViewClient內:

 @Override 
     public void onPageFinished(WebView view, String url) { 
      webView.loadUrl("javascript:android.onData(document.getElementById('results'));"); 
     } 

但它根本沒有工作,整個網頁改爲加載div我的想。

+0

「我無法讓它工作」 - 請解釋您的確切症狀。 – CommonsWare

+1

有你叫webview.javascriptenabled(true) – drWisdom

+0

是的,我已經調用它。 – Grender

回答

0

1)如果要加載從網站URL的內容的一部分,那麼延長WebViewClient Link

2)使用JSOUP庫報廢網頁。得到URL結果分析它只拿divid(結果)

Document document = Jsoup.connect(LINK_TO_WEBSITE).get(); 
String content = document.getElementById("pnlResults").outerHtml(); 

,並通過這些內容在Android的web視圖。

WebView webview = (WebView)this.findViewById(R.id.webview); 
webview.getSettings().setJavaScriptEnabled(true); 
webview.loadDataWithBaseURL("", content, "text/html", "UTF-8", ""); 
+0

我正在那樣做, – Grender

+0

它是爲你工作 –

+0

它不工作,我想要顯示的div的html代碼,而不是隱藏其他元素, – Grender