如何执行网页视图的Andr​​oid里面点击一个按钮 [英] How to perform a button click inside a Webview Android

查看:98
本文介绍了如何执行网页视图的Andr​​oid里面点击一个按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我只是创造了这个应用程序:

 公共类MainActivity扩展ActionBarActivity {@覆盖
保护无效的onCreate(捆绑savedInstanceState){
    super.onCreate(savedInstanceState);
    的setContentView(R.layout.activity_main);
    鉴于网页视图=(的WebView)findViewById(R.id.webView);
    WebSettings坠落= view.getSettings();
   faller.setJavaScriptEnabled(真);
   view.loadUrl(http://catcheat.net/test/test.html);
    view.setWebViewClient(新WebViewClient());}
}

现在我想要做的是在独特的按钮显示在页面上,但我真的不知道该怎么办编程点击。我读过每一个岗位像这样在这里,但没有人能帮助我。

这是HTML页面:

 < HTML和GT;
<身体GT;
<表格名称=pg_frm方法=邮报行动=htt​​ps://www.paygol.com/pay>
<输入类型=隐藏的名字=pg_serviceidVALUE =333818>
<输入类型=隐藏的名字=pg_currencyVALUE =EUR>
<输入类型=隐藏的名字=pg_nameVALUE =捐赠>
<输入类型=隐藏的名字=pg_customVALUE =>
<输入类型=隐藏的名字=pg_priceVALUE =0.5>
<输入类型=隐藏的名字=pg_return_urlVALUE =>
<输入类型=隐藏的名字=pg_cancel_urlVALUE =>
<输入类型=形象NAME =pg_buttonSRC =htt​​ps://www.paygol.com/webapps /buttons/en/white.pngBORDER =0ALT =请使用PayGol付款:在最简单的方法!标题=请使用支付PayGol:最简单的方法! >
< /表及GT;
< /身体GT;
< / HTML>


解决方案

如果你的按钮是在你的HTML页面,让您可以简单地执行JavaScript code来模拟这样的单击事件:

  view.loadUrl(JavaScript的:clickFunction());

还需要在你的HTML页面来定义clickFunction:

 函数clickFunction(){
    //单击事件
}

也可以通过JavaScript的过于添加上述功能:

  view.loadUrl(JavaScript的:clickFunction(){//点击事件})());

更新:

 < HTML和GT;
 < HEAD>
 <脚本>
 功能clickFunction(){
      变种形式=的document.getElementById(MyForm的);
      form.submit();
 }
 < / SCRIPT>
 < /头>
 <身体GT;
 <表ID =MyForm的NAME =pg_frm方法=邮报行动=htt​​ps://www.paygol.com/pay>
 <输入类型=隐藏的名字=pg_serviceidVALUE =333818>
 <输入类型=隐藏的名字=pg_currencyVALUE =EUR>
 <输入类型=隐藏的名字=pg_nameVALUE =捐赠>
 <输入类型=隐藏的名字=pg_customVALUE =>
 <输入类型=隐藏的名字=pg_priceVALUE =0.5>
 <输入类型=隐藏的名字=pg_return_urlVALUE =>
 <输入类型=隐藏的名字=pg_cancel_urlVALUE =>
 <输入类型=形象NAME =pg_buttonSRC =htt​​ps://www.paygol.com/webapps /buttons/en/white.pngBORDER =0ALT =请使用PayGol付款:在最简单的方法!标题=请使用支付PayGol:最简单的方法! >
 < /表及GT;
 < /身体GT;
 < / HTML>

I simply created this app:

public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    WebView view = (WebView) findViewById(R.id.webView);
    WebSettings faller = view.getSettings();
   faller.setJavaScriptEnabled(true);
   view.loadUrl("http://catcheat.net/test/test.html");
    view.setWebViewClient(new WebViewClient());

}
} 

Now what I want to do is to click programmatically in the unique button that is displayed on the page But I really don't know how to do. I ve read every post like this here but nobody could help me.

This is the HTML page:

<html>
<body>
<form name="pg_frm" method="post" action="https://www.paygol.com/pay" >
<input type="hidden" name="pg_serviceid" value="333818">
<input type="hidden" name="pg_currency" value="EUR">
<input type="hidden" name="pg_name" value="Donation">
<input type="hidden" name="pg_custom" value="">
<input type="hidden" name="pg_price" value="0.5">
<input type="hidden" name="pg_return_url" value="">
<input type="hidden" name="pg_cancel_url" value="">
<input type="image" name="pg_button" src="https://www.paygol.com/webapps /buttons/en/white.png" border="0" alt="Make payments with PayGol: the  easiest way!" title="Make payments with PayGol: the easiest way!" >    
</form> 
</body>
</html>

解决方案

if your Button is in your Html page so you can simply run javaScript code to simulate click event like this:

view.loadUrl("javascript:clickFunction()"); 

also you need to define clickFunction in your Html page:

function clickFunction() {
    //click event
}

or you can add above function by javascript too:

 view.loadUrl("javascript:clickFunction(){ //click event })()"); 

UPDATE:

 <html>
 <head>
 <script>
 function clickFunction(){
      var form = document.getElementById("myform");
      form.submit();
 }
 </script>
 </head>
 <body>
 <form id="myform" name="pg_frm" method="post" action="https://www.paygol.com/pay" >
 <input type="hidden" name="pg_serviceid" value="333818">
 <input type="hidden" name="pg_currency" value="EUR">
 <input type="hidden" name="pg_name" value="Donation">   
 <input type="hidden" name="pg_custom" value="">
 <input type="hidden" name="pg_price" value="0.5">
 <input type="hidden" name="pg_return_url" value="">
 <input type="hidden" name="pg_cancel_url" value="">
 <input type="image" name="pg_button" src="https://www.paygol.com/webapps /buttons/en/white.png" border="0" alt="Make payments with PayGol: the  easiest way!" title="Make payments with PayGol: the easiest way!" >    
 </form> 
 </body>
 </html>

这篇关于如何执行网页视图的Andr​​oid里面点击一个按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆