我想做一个点击填入,就能进行填表的,但是看了一些方法后,卡住了。
输入内容后,没办法填入“你的姓名是?”这个表中,而是只显示填入的内容,其他地方都变成白色的。
点击填入后,没有填入你的姓名是?这个表中
为什么不会是这样子呢?
代码如下:
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.webkit.*;
import android.widget.Button;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
import org.w3c.dom.Document;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private WebView webView;
private EditText xm,xh,tw,shi;
private Button tijiao,tianru;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bdUI();
tijiao.setOnClickListener(this);
tianru.setOnClickListener(this);
WebSettings settings = webView.getSettings();
settings.setUseWideViewPort(true);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
String strurl="https://sdwj.99.com/q/naIzUr";
webView.loadUrl(strurl);
webView.setWebViewClient(new WebViewClient());
}
private void bdUI() {
webView = (WebView) findViewById(R.id.webview);
xm = (EditText) findViewById(R.id.xm);
xh = (EditText) findViewById(R.id.xh);
tw = (EditText) findViewById(R.id.tw);
shi = (EditText) findViewById(R.id.shi);
tijiao = (Button) findViewById(R.id.tijiao);
tianru = (Button) findViewById(R.id.tianru);
}
public void onClick(View view){
switch (view.getId()){
case R.id.tianru:
String a=xm.getText().toString();
webView.loadUrl("javascript:document.querySelector('.question-text-input').value='"+a+"';");
break;
case R.id.tijiao:
webView.loadUrl("javascript:document.getElementById('curPage').click();");
break;
default:break;
}
}
}
个人建议不喜勿喷
1、这个界面要么你纯原生代码敲即可。
2、你除了标题栏其他的交给js处理,包括填入和提交按钮。
无论是js还是原生这个界面都很简单,这样拆分功能,反而把简单的问题复杂化了。