1

まず、私がやろうとしていることを皆さんにお見せしたいと思います。
AJAX、jquery、phpを使用してアプリケーションで検索機能を作成しようとしていますが、Codeigniterを使用しているフレームワークについては、CIである必要はありません。これは、すべてに似ている可能性があります(おそらく)。

イベントを監視するためのこのコードがfocusありblurます。

$("#searchbox").on({
    keyup : debounce(function(){
        MSI.Interface.search();
        },350,false),
    blur  : function(){
        $("#search_results").hide();
        }
});

まだ終わっていないので、blurイベントは.hide()。他に何を含めるかは考えられません。おそらく、htmlのをリセット#search_resultsして空白にしますが、それが妥当かどうかはわかりません。

最初の質問:そのためのより合理的な解決策は何だと思いますか?

前のコードでわかるように、サーバーでの文字ごとの要求を防ぐために、デバウンス機能があります。それが正しいかどうか疑問に思います。

それから私はこのsearch機能を持っています

search : function() {
    var keyword = $("#searchbox").val();
    if (keyword == '') {
    } else {
        $.ajax({
            url : MSI.variables.base_url + 'search',
            type: 'POST',
            data: {
                keyword : keyword
            },
            dataType : 'json',
            success: function(output) {
                $.each(output, function() { 
                    $.each(this, function(key, value){
                        $("#search_results").show().prepend("<p>"+value+"</p>");
                    });
                });
            }
        });
    }
}

そのコードを使用すると、スクリプトはコンテンツをに追加できるようになり#search_results divます。

2番目の質問:これに対するより良い解決策は何だと思いますか?

4

0 に答える 0