具有多个源的jquery自动完成

时间:2015-04-17 15:34:37

标签: jquery-ui jquery-ui-autocomplete

我有一个带有单选按钮的Web表单和一个用于自动完成的输入字段。根据所选的单选按钮,需要调用不同的Web服务(url)来处理用户在输入字段中输入的数据。 以下代码运行良好,但我不知道如何使其更灵活地接受不同的URL。

        $("#txtCriteria").autocomplete({
    source: function (request, response) {
        $.ajax({
            async: false,
            delay: 500,
            url: "../../CommonWebServices/wsEntity.asmx/ReportBuildings",
            data: "{ 'Name': '" + request.term + "'}",
            dataType: "json",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            dataFilter: function (data) { return data; },
            success: function (data) {
                response($.map(data.d, function (item) {
                    return {
                        label: item.Text,
                        value: item.Value
                    }   // end of return
                })) // end of response
            }   // end of success
        });     // end of ajax
    },  // end of source
    minLength: 1,
});

以下是单选按钮。因此,如果我选择Region,则webservice URL与Building不同。

                        <input id="Radio1" type="radio" value="S" name="rblRptChoice" class="label" checked="checked" />State Wide<br />
                <input id="Radio2" type="radio" value="P" name="rblRptChoice" class="label" />Prosperity Region<br />
                <input id="Radio3" type="radio" value="R" name="rblRptChoice" class="label" />Region<br />
                <input id="Radio4" type="radio" value="T" name="rblRptChoice" class="label" />Cluster<br />
                <input id="Radio5" type="radio" value="C" name="rblRptChoice" class="label" />CEPD<br />
                <input id="Radio6" type="radio" value="F" name="rblRptChoice" class="label" />Fiscal Agency<br />
                <input id="Radio7" type="radio" value="B" name="rblRptChoice" class="label" />Building<br />
                <input id="Radio8" type="radio" value="P" name="rblRptChoice" class="label" />CIP Code<br />
                <input id="Radio9" type="radio" value="Y" name="rblRptChoice" class="label" />Year<br /><br />
                <asp:Label ID="lblDetails" runat="server" Text="Enter Details"></asp:Label><br />
                <input id="txtCriteria" type="text" placeholder="Enter Criteria" style="width:250px" />

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

当选择单选按钮时,我将路径值放在变量中,然后将url设置为变量。