Я пытаюсь реализовать плагин автозаполнения jquery.
У меня все работает, но что-то не работает должным образом.
По сути, у меня есть автозаполнение списка сотрудников.
Список генерируется из таблицы в базе данных sql (employee_names и employee_ID) с использованием обработчика VB.NET (файл .ashx). Данные форматируются как: employee_name-employee_ID. Пока все хорошо, и все сотрудники перечислены в автозаполнении.
Проблема в том, что я не знаю, как перенаправить пользователя на определенную страницу (например, employee_profile.aspx), когда он выбрал сотрудника из автозаполнения.
Это мой код перенаправления, но он работает не так, как должен:
$('#fname2').result(function(event, data, formatted) {
location.href = "employee_profile.aspx?id=" + data
});
Например; пользователь выбирает
Он будет перенаправлять пользователя на employee_profile.aspx? Id = имя-идентификатора сотрудника (например: employee_profile.aspx? Id = Джон Доу-91210) вместо employee_profile.aspx? Id = 91210.
Я знаю, что могу лишить employee_ID:
formatResult: function(data, value) {
return value.split("-")[1];
}
});
Но я не знаю, как передать этот employee_ID на страницу перенаправления ..
Вот весь мой код:
$().ready(function() {
$("#fname2").autocomplete("AutocompleteData.ashx", {
minChars: 3,
selectFirst: false,
formatItem: function(data, i, n, value) {
return value.split("-")[0];
},
//Not used, just for splitting employee_ID
//formatResult: function(data, value) {
// return value.split("-")[1];
//}
});
$('#fname2').result(function(event, data, formatted) {
location.href = "employee_profile.aspx?id=" + data
});
});
Я знаю, что я очень близок, и это должно быть что-то действительно простое, но кто-нибудь может мне помочь?
EDIT
Это решило это для меня: formatted.split вместо data.split.
Код:
$('#fname3').result(function(event, data, formatted) {
var employeeId = formatted.split("-")[1];
location.href = "employee_profile.aspx?id=" + employeeId
});