6

My android application displays webpages(i used webview for it). .but javascript onthe wepage is not running in a webview .If i visit the same webpage through the Browser,javascript is running . How to run javascript in an application(using a webview)?

rimpo
  • 61
  • 1
  • 2

3 Answers3

13

Enable Javascript! :

WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);

WebView : setJavaScriptEnabled

Community
  • 1
  • 1
Jorgesys
  • 124,308
  • 23
  • 334
  • 268
  • 1
    mWebView = (WebView) findViewById(R.id.webview); mWebView.getSettings().setJavaScriptEnabled(true); WebSettings webSettings = myWebView.getSettings(); webSettings.setJavaScriptEnabled(true); I tried both,they didnt work for me. – rimpo Aug 11 '10 at 15:30
  • it also support for mathjax-config? because my webview client not display some math function i googled a lot but nothing works@Elenasys – Ajay Pandya Jan 23 '16 at 11:14
7

From the Android documentation:

"By default, a WebView provides no browser-like widgets, does not enable JavaScript and web page errors are ignored. If your goal is only to display some HTML as a part of your UI, this is probably fine; the user won't need to interact with the web page beyond reading it, and the web page won't need to interact with the user. If you actually want a full-blown web browser, then you probably want to invoke the Browser application with a URL Intent rather than show it with a WebView.

...

However, you can modify the WebSettings, such as enabling JavaScript with setJavaScriptEnabled()."

Timothy Lee Russell
  • 3,719
  • 1
  • 35
  • 43
  • 1
    This answer is extremely importent OP, just because something CAN be done does not mean you should do it. – Dimse Sep 30 '11 at 15:04
0

For Easy way you can use WebChromeClient, see in this video tutorial.

If you want more control with js, you can use method with addJavascriptInterface, but you must create your html-page for this method (). Look at this sample.

Code Lღver
  • 15,573
  • 16
  • 56
  • 75
nfirex
  • 1,523
  • 18
  • 24