2

私はJSPを使用していますが、jqueryのオートコンプリートとともに2つのパラメーターを渡したいと思います。2番目のパラメーターは、選択ボックスの値です。次のコードを使用しましたが、オプションの最初の値しか取得していません。選択ボックスの値を返す関数をチェックしました。ページの読み込み時にのみ呼び出されます。私の問題を解決する方法はありますか?

 /* inside my page */


        jQuery(function() {
    $("#branch").autocomplete("getbranchdetails.jsp", {
        extraParams: {
            filter: getDropdownValue()
        }
    });
});


    function getDropdownValue() {
    var compId=document.getElementById("company").value;
    return compId;
    }




        /* inside getbranchdetails.jsp */

        <%
        String company=request.getParameter("filter");

        System.out.println("company :"+company);


        getbranchdetails db=new getbranchdetails();
        String query = request.getParameter("q");
        List<String> agent = db.getData(query,brtype);
        Iterator<String> iterator = agent.iterator();
        while(iterator.hasNext()) {
        String agents = (String)iterator.next();
        out.println(agents);
        }
        %>

私も次のリンクを試しましたが、運がありません http://123code.blogspot.in/2010/09/jquery-autocomplete-plugin-using.html

4

3 に答える 3

1

これを変える:

$("#branch").autocomplete("getbranchdetails.jsp");
extraParams: {
    filter: getDropdownValue()
}
}); 

$("#branch").autocomplete("getbranchdetails.jsp", {
    extraParams: {
        filter: getDropdownValue()
    }
});
于 2012-04-27T15:03:01.170 に答える
0

これを試して...

$('#branch').autocomplete('getbranchdetails.jsp', {
    mustMatch: false
});

$('#branch').setOptions({
    extraParams:{filter: function(){return $('#company').val();}
});
于 2012-04-27T15:03:34.220 に答える
0

このjsFiddleをチェックしてください... http: //jsfiddle.net/PTeMy/

オートコンプリートでは、ソースを関数呼び出しとして定義できます。これを使用すると、オートコンプリートリストを好きなように作成できるはずです。

例えば...

HTML

<input id="auto" type="text">

must contain....
<select>
    <option value="a">a</option>        
    <option value="b">b</option>        
    <option value="c">c</option>        
    <option value="d">d</option>        
    <option value="e">e</option>        
    <option value="f">f</option>        
    <option value="g">g</option>        
</select>​

脚本

$(document).ready(function(){
    $('#auto').autocomplete({
        source: getTags()
    });
});

function getTags(){
        var tags = [
            "ActionScript",
            "AppleScript",
            "Asp",
            "BASIC",
            "C",
            "C++",
            "Clojure",
            "COBOL",
            "ColdFusion",
            "Erlang",
            "Fortran",
            "Groovy",
            "Haskell",
            "Java",
            "JavaScript",
            "Lisp",
            "Perl",
            "PHP",
            "Python",
            "Ruby",
            "Scala",
            "Scheme"
        ];   

    tags = $.grep(tags, function(t) {
        return t.indexOf($('select').val()) > 0;
    });

    return tags;
}

​
于 2012-04-27T14:41:24.510 に答える