У меня есть функция, в которой я получаю некоторые данные и вставляю их в строку таблицы.
Затем я настраиваю событие щелчка в строке, чтобы при его нажатии он переходил кURL, указанный в моем объекте данных:
$(data).each(function(i, item) {
var row = $("<tr></tr>");
tbody.append(row);
// Add some cells into the row...
var firstNameCol = $("<td>" + item.FirstName + "</td>");
row.append(firstNameCol);
// Set up click handler
row.click(function() {
window.location.href = item.DetailsURL;
});
});
Теперь этот код работает нормально, но я понял, что я не уверен, как работают события.
Функция содержит ссылкув item
, которая является локальной переменной для цикла for.Когда пользователь нажимает на строку, как он узнает, на какой элемент он смотрит?Это как-то кэшируется при регистрации функции щелчка?
Во-вторых, действительно ли этот метод плох?Я заставляю его выполнять закулисную работу?
Редактировать Добавлен дополнительный код ...