#meteor
#meteor
Вопрос:
Я пытаюсь установить переменную сеанса для текста, на который пользователь нажимает при нажатии на ссылку. Например, если ссылка <a href="/link">The Link</a>
.
Я бы хотел Session.set('clickedLink', <<The Link>>);
, но «Ссылка», очевидно, заменена текстовой строкой, на которую нажал пользователь.
Возможно ли это? Я все делаю неправильно?
Я подумал, что смогу использовать что-то вроде:
Template.SingleQuote.events({
"click .link": function (event) {
Session.set("currentPageName", event.a.text);
}
});
Ответ №1:
Использование event.target.text
.
Template.SingleQuote.events({
'click .link'(event) {
Session.set('currentPageName', event.target.text);
}
});
Редактировать:
Вместо того, что было опубликовано, рецензенты предложили мне обновить этот ответ, чтобы использовать следующий синтаксис:
'click .link': function(event) { /* ... */ }
Оба они являются совершенно допустимым синтаксисом для события шаблона Meteor, используйте тот, который вам наиболее удобен.
Комментарии:
1. Спасибо, да, это сработало. Примечание: одна из моих ссылок содержала <em>, и поэтому event.target.text возвращал «», поэтому либо использование innerText, либо просто перемещение <em> из тега a исправило это.