backbone.js - events, knowing what was clicked
44,882
Solution 1
Normally on an event bind, you would just use $(this)
, but I'm fairly sure Backbone views are set up so that this
always refer to the view, so try this:
perpage: function(ev) {
alert($(ev.target).text());
}
REALLY LATE EDIT: You probably want to use $(ev.currentTarget)
. See dicussion on pawlik's answer below
Solution 2
ev.target
can be misleading, you should use ev.currentTarget
as described on http://www.quirksmode.org/js/events_order.html
Author by
Matthew
Updated on November 21, 2020Comments
-
Matthew over 3 years
In one of my backbone.js view classes, I have something like:
... events: { 'click ul#perpage span' : 'perpage' }, perpage: function() { // Access the text of the span that was clicked here // Something like: alert($(element).text()) }, ...
because my per page markup might have something like:
<ul id="perpage"> <li><span>5</span></li> <li><span>10</span></li> </ul>
So how exactly can I find information about the element that caused the event? Or in this instance, that was clicked?