4

私はモバイルウェブサイトを構築しています。このフォームにはフォームがありますが、送信ボタンはありません。したがって、ユーザーが入力フィールドに何かを入力してAndroidまたはiPhone GOボタンをクリックすると、フォームが送信されます。これにはHTMLとjQueryを使用しています。

このGOイベントをjQueryでキャプチャするにはどうすればよいですか?私はそれが自分自身でこのように行われることを望んでいます。

4

2 に答える 2

7

送信ボタンを追加し、に設定しopacityます0

私はこれをhtmlに使用しました:

<form>
    <input type="text" name="input" />
    <input type="submit" style="opacity:0;" />
</form>

そしてこれをalert()価値に:

$(document).ready(function() {
    $("form").submit(function() {
        alert($("[name=input]").val());
    });
});

フォームのsubmit-Eventを処理する必要があります。これは、jQueryでうまく機能します。

于 2012-06-29T07:05:32.357 に答える
-2

webviewを使用して、android/iphoneデバイスにhtmlファイルをロードできます。

以下を確認してください。

  1. androidのassetsフォルダーの下にindex.htmlを追加します。mainActivityクラスに以下を追加します。ここではStackOverFlowActivityという名前です

    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.webkit.WebView;
    
    public class StackOverFlowActivity extends Activity {
    
    private Handler mHandler = new Handler();
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        WebView view=(WebView)findViewById(R.id.webView1);
        view.getSettings().setJavaScriptEnabled(true);
        view.loadUrl("file:///android_asset/index.html");
        view.addJavascriptInterface(new MyJavaScriptInterface(), "Android");
    }
    
    final class MyJavaScriptInterface
    {
        public void ProcessJavaScript(final String scriptname, final String args)
            {             
                mHandler.post(new Runnable()
                    {
                        public void run()
                            {
                                String h="Hi";
                                webview.loadUrl("javascript:result(\""+h+"\")");
                            }
                    });
            }
    }
    

    }

  2. index.html

    <html>
    <head>
    <script type="text/javascript">
    function clickhere()()
    {
       Android.ProcessJavaScript("result",null); 
    }
    
    function result(res) 
    {
    
        alert(res);       
     }
     </script>
     </head>
    
     <body>
     <input type="button" id="clickme" onclick="clickhere()" value="GO"></input>
     </body>
     </html>
    
于 2012-06-29T07:01:56.150 に答える