android 表单提交 后台取值,Android中获取网页表单中的数据实现思路及代码

MainActivity如下:

package cn.testjavascript;

import java.util.StringTokenizer;

import android.os.Bundle;

import android.webkit.WebView;

import android.app.Activity;

/**

* Demo描述:

* 在Android中获取网页里表单中的数据

*/

public class MainActivity extends Activity {

private WebView mWebView;

private String date =null;

private String email = null;

private String username = null;

private String sex = null;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

init();

}

private void init(){

mWebView=(WebView) findViewById(R.id.webView);

initWebViewSettings();

mWebView.loadUrl("file:///android_asset/form.html");

//注意addJavascriptInterface方法中第二参数

//它表示我们的java对象javaClass的别名.

//这样Javascript就可以通过该别名来调用Android中的方法

//即Javascript代码中的:window.testform.send(date+"|"+email+"|"+name+"|"+sex);

//send是方法名

//testform是别名

mWebView.addJavascriptInterface(new Object() {

public void send(String userInfo) {

StringTokenizer userInfoStringTokenizer = new StringTokenizer(userInfo, "|");

date = userInfoStringTokenizer.nextToken();

email = userInfoStringTokenizer.nextToken();

username = userInfoStringTokenizer.nextToken();

sex = userInfoStringTokenizer.nextToken();

System.out.println("userInfoStringTokenizer="+userInfoStringTokenizer.toString());

System.out.println("date=" + date);

System.out.println("email=" + email);

System.out.println("username=" + username);

System.out.println("sex=" + sex);

};

}, "testform");

}

private void initWebViewSettings(){

mWebView.setVerticalScrollBarEnabled(false);

mWebView.setHorizontalScrollBarEnabled(false);

mWebView.getSettings().setJavaScriptEnabled(true);

mWebView.getSettings().setSupportZoom(true);

mWebView.getSettings().setDomStorageEnabled(true);

mWebView.getSettings().setPluginsEnabled(true);

mWebView.requestFocus();

mWebView.getSettings().setUseWideViewPort(true);

mWebView.getSettings().setLoadWithOverviewMode(true);

mWebView.getSettings().setSupportZoom(true);

mWebView.getSettings().setBuiltInZoomControls(true);

}

}

main.xml如下:

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

>

android:id="@+id/webView"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:layout_centerInParent="true"

/>

form.html如下:

时间:

2011

2012

2013

2014

2015

邮箱:

昵称:

性别:

function f(){

var email = document.getElementById('email').value;

var name = document.getElementById('name').value;

var date = document.getElementById('shijian').value;

if(document.getElementById('men').checked && !document.getElementById('women').checked){

var sex = document.getElementById('men').value;

}else if(!document.getElementById('men').checked && document.getElementById('women').checked){

var sex = document.getElementById('women').value;

}

window.testform.send(date+"|"+email+"|"+name+"|"+sex);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值