使用webview重新创建活动后,JavaScript无法运行

时间:2014-03-19 07:28:45

标签: javascript android webview

我在SD卡上有一个本地html文件,我将其加载到webview中。 html有两个按钮,第一个按钮一个在webview上显示一些文本,第二个按钮清除webview上的文本。 当webview第一次运行时,这很好。但是当我使用webview离开活动,然后稍后重新创建相同的活动时,第一个按钮不再起作用。

我已将这些设置用于webview

webView.loadUrl("file:///_path_to_file_on_sdcard_");
webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
setWebChromeClient(new WebChromeClient());

html:

<p>JSONP Example</p>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<script type="text/javascript">
$(document).ready(function(){
          $("#button1").click(function(){
        try {
        $.ajax({
            type: "get",
            async: false,
            url: "http://myserver.com/json.php?iamback=?",
            dataType: "jsonp",
            jsonp: "callback",
            jsonpCallback:"flightHandler",
            success: function(data){
                $("#content").html('');
                $("#content").append('Your data is' + data+'.<br />');                  $("#content").append('Your name is' + data.name+'.<br />');                 $("#content").append('You live in' + data.addr+'.');         
                },
            error: function(){
                alert('fail');
                }
            });
                     }
        catch(err)
        {
            alert(err);
        }
        }); 

        $("#button2").click(function(){
            a$("#content").html('');
        });
        });
<p><button id="button1">JSONP Example</button> <br /> <br /> 
   <button id="button2">Clear</button> </p>
<div id="content">testing abc</div>

网址http://myserver.com/json.php?iamback=?返回:

?({'name' : 'Tom','addr':'Taipei'})

我不知道我在这里做错了什么? 任何人都有任何想法或关键字,我可以用来找到答案吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

在WebView上设置设置后,请尝试最后调用loadUrl