モバイル端末による検索機能の実現

1687 ワード

モバイル側では、次のような検索関連機能を実現する必要があります.
  • 検索ボタンをクリックして検索
  • を実現する.
    検索ボタン
    ここではまず、検索ボタンをポップアップする方法に遭遇します.
    html 5ではinputがsearchタイプをサポートしており、iso/アンドロイドも独自の実装をしています.モバイル側の基準に従って書くだけで、必要な検索ボタンを提供します.

    このような書き方で、検索ボタン付きキーボードに切り替えることができます
    データの送信
    検索ボックスに記入したデータを送信するのは難点かもしれません.
    送信データについては、formフォームが既に存在するため、少なくともformフォームとajaxでデータを送信することができる
    formフォーム送信データ
    デフォルトで検索ボタンをクリックするのはformに応答するsubmitイベントです.一般的にこのイベントをキャプチャして対応する値を取得してaction指定のリンクに送信すればOKです.
    しかし、バックエンドインタフェースではjsonとhttpタイプしか受け入れられないため、formフォームのアプリケーション/x-www-form-urlencodedには受け入れられない.
    タイプ制限については、送信タイプを設定し、所望のタイプに変更することが容易に考えられる.
    W 3 C規格によれば、要求タイプを修正するために理論的にこのように設定することができる.

    しかし、実際にはjsonデータを送信することはできません.実際のリクエストヘッダは次のとおりです.
    Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    Accept-Encoding:gzip, deflate
    Accept-Language:zh-CN,zh;q=0.8,en;q=0.6
    Cache-Control:no-cache
    Connection:keep-alive
    Content-Length:23
    Content-Type:application/x-www-form-urlencoded
    

    私たちが望んでいるアプリケーション/jsonタイプに変わっていないので、専門が足りないので、深く入ることができません.
  • 参照より多くのpost送信データフォーマット
  • タイプ変更に失敗したら、別の考えを試します.ajaxでjsonタイプデータを送信します.
    ajax jsonデータ送信
    formフォームはsubmitイベントをデフォルトで傍受し、アプリケーション/x-www-form-urlencodedデータを送信します.submitを上書きした応答イベントを書き換えるだけでいいです.
    このようにすることができます
        document.getElementById("searchSubmit").onsubmit = function () {
            // ajax     ;
            //event.preventDefault();       
        }