表单提交在Android 4.0中无效。相同的代码在较低版本的Android和较高版本(如果冻豆)中运行良好。 document.myForm.submit()调用它转到下一页,并添加了诸如page.html?value =“”的值。但是找不到页面它将此作为完整的URL而不是表单sumbit
答案 0 :(得分:0)
Android 4.0不接受页面提交自己甚至“?”被视为HTML文件的一部分。我覆盖了WebViewClient
private class MyWebViewClient extends WebViewClient {
public String values = "";
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.contains("?")) {
try {
values = URLDecoder.decode(url, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
url = url.replace("?", "%45");
String args[] = url.split("%45");
view.loadUrl(args[0]);
}else{
view.loadUrl(url);
}
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
if(values.length()>0){
if(url.contains("smartmodesresult.html")){
mWebView.loadUrl("javascript:getUrlVars(\""+values+"\");");
}
}
super.onPageFinished(view, url);
}
}