Я использую плагин автозаполнения JQuery и передаю массив строк для автозаполнения (см. Код ниже). Метод, который я вызываю для получения моих данных (GetCustomerNames), просто возвращает массив строк, и это работает нормально. Мне нужно найти способ передать параметр в метод GetCustomerNames, чтобы я мог отфильтровать то, что возвращается. Кто-нибудь может помочь с этим?
Вот код разметки на странице Default.aspx:
<head runat="server">
<title></title>
<script type="text/javascript" src="js/jquery-1.3.2.js" ></script>
<script type="text/javascript" src="js/jquery.autocomplete.js" ></script>
<script type="text/javascript">
//Working, but uses results output to an aspx page using StringBuilder, trying
//to find a way to get the data with json
//$(document).ready(function() {
// $("#example").autocomplete('AutoCompleteData.aspx');
//});
$(document).ready(function() {
$("#example").keyup(function() {
$.ajax({
type: "POST",
url: "Default.aspx/GetCustomerNames",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
$("#example").autocomplete(msg.d);
},
error: function(msg) {
alert("error");
}
});
});
});
</script>
Имя покупателя:
А вот код в коде Default.aspx.cs за страницей, реализующий метод GetCustomerNames:
[WebMethod]
public static string[] GetCustomerNames()
{
string[] data = new string[] {"Andrew", "Ramona", "Russ", "Russell", "Raymond"};
return data;
}