我不知道如何引用表单上的字段作为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自动完成功能的其他表单上有多个字段,但没有一个必须使用这样的两个参数。