jQuery基于另一个文本框值的自动完成功能

时间:2019-04-30 21:55:09

标签: jquery ajax autocomplete

我不知道如何引用表单上的字段作为jQuery自动完成的第二个参数。

我在StackOverflow上回答了类似问题的所有答案,但无济于事。

我的ASMX中有一条SELECT语句,如下所示:

SELECT ProductName FROM tblCustomerProducts WHERE CustomerName = @Search AND ProductName like @SearchBy + '%'

function ProductAutoComplete() {
    $("#<%=Product.ClientID %>").autocomplete({
        autoFocus: true,
        source: function (request, response) {
            var CustomerID = "{'Search': '" + $('Customer').val();
        var input = "{'SearchBy': '" + request.term + "'}";

            $.ajax({
                url: '<%=ResolveUrl("~/FetchProducts.asmx/GetProducts") %>',
                data: CustomerID, input,             
                dataType: "json",
                type: "POST",
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    response($.map(data.d, function (item) {
                        return {
                            label: item
                        }
                    }))
                },
                error: function (response) {
                    alert(response.responseText);
                },
                failure: function (response) {
                    alert(response.responseText);
                }
            });
        },
        delay: 200,

        minLength: 2,
    });

我有一个名为“客户”的文本框和一个名为“产品”的文本框 我希望产品自动完成功能只返回与该客户关联的产品。我在使用jquery自动完成功能的其他表单上有多个字段,但没有一个必须使用这样的两个参数。

0 个答案:

没有答案