Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 进度对话框+;对话框_Javascript_Android - Fatal编程技术网

Javascript 进度对话框+;对话框

Javascript 进度对话框+;对话框,javascript,android,Javascript,Android,我有一个webview,其中有一个进度对话框,显示: public void onLoadResource (WebView view, String url) { if (progressDialog == null) { progressDialog = new ProgressDialog(activity); progressDialog.setMessage("Loading... "); progressDialog.

我有一个webview,其中有一个进度对话框,显示:

public void onLoadResource (WebView view, String url) {
    if (progressDialog == null) 
    {
        progressDialog = new ProgressDialog(activity);
        progressDialog.setMessage("Loading... ");
        progressDialog.show();
    }
}
我正在加载的页面有一个由javascript控制的按钮,该按钮有一个对话框:

function confirmation() {
    var answer = confirm("Are You sure?")
    if (answer) {
        alert("No information saved!")
        window.history.go(-2);
    }
    else {
        alert("You may hit save to submit information")
    }
}
问题是当我按下这个按钮时,什么都没有发生。如果我删除进度对话框。这个按钮功能很好。我补充说

webview.getSettings().setJavaScriptEnabled(true);

但是一点运气都没有。有人遇到过这种情况吗?如何解决它?

ProgressDialog
是“系统模式”,这意味着,当它可见时,它正在从底层的
WebView
窃取焦点。因此,按钮单击未被激活。页面上的按钮应该做什么?换句话说,当
ProgressDialog
可见时,为什么需要单击它?这是一个取消按钮,如果用户决定不填写表单,它将直接跳到主页。你知道还有别的办法吗?就像让进度对话框出现在第一页,然后永远消失一样。或实现progressbar的另一种方法(正常)。我见过一个人做过类似的事。在他的xml布局中有progressbar(普通),但没有webview。然后他简单地请求WindowFeature(Window.FEATURE\u不确定\u进度);setProgressBarVisibility(真);setContentView(R.layout.prog);其中prog是只有progressbar的布局。如果不完全理解您的代码,很难说,但您可以尝试类似的方法。或者,使用带有
ProgressBar
和取消按钮的自定义对话框。如果按下取消按钮,您可以在
WebView
ProgressDialog
上调用
loadUrl(“javascript:confirmation()”)
,它是“系统模式”,这意味着当它可见时,它正在从底层
WebView
窃取焦点。因此,按钮单击未被激活。页面上的按钮应该做什么?换句话说,当
ProgressDialog
可见时,为什么需要单击它?这是一个取消按钮,如果用户决定不填写表单,它将直接跳到主页。你知道还有别的办法吗?就像让进度对话框出现在第一页,然后永远消失一样。或实现progressbar的另一种方法(正常)。我见过一个人做过类似的事。在他的xml布局中有progressbar(普通),但没有webview。然后他简单地请求WindowFeature(Window.FEATURE\u不确定\u进度);setProgressBarVisibility(真);setContentView(R.layout.prog);其中prog是只有progressbar的布局。如果不完全理解您的代码,很难说,但您可以尝试类似的方法。或者,使用带有
ProgressBar
和取消按钮的自定义对话框。如果按下取消按钮,则可以在
WebView
上调用
loadUrl(“javascript:confirmation()”)