Android 4.0 でフォーム送信が機能しません。Android の下位バージョンとジェリー ビーンのような上位バージョンでは、同じコードが正常に動作します。document.myForm.submit() を呼び出すと、次のページに移動し、page.html?value= "" のように値が追加されます。しかし、ページが見つかりません
質問する
190 次
1 に答える
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);
}
}
于 2012-12-17T08:38:46.780 に答える