underscore template backbonejs javascript jquery backbone.js underscore.js

javascript - template - backbone.js-events, sabiendo lo que se hizo clic



backbonejs github (3)

En una de mis clases de vista de backbone.js, tengo algo como:

... events: { ''click ul#perpage span'' : ''perpage'' }, perpage: function() { // Access the text of the span that was clicked here // Something like: alert($(element).text()) }, ...

porque mi marcado por página podría tener algo como:

<ul id="perpage"> <li><span>5</span></li> <li><span>10</span></li> </ul>

Entonces, ¿cómo puedo encontrar información sobre el elemento que causó el evento? ¿O en este caso, que se hizo clic?


Normalmente en un enlace de evento, solo usaría $(this) , pero estoy bastante seguro de que las vistas de Backbone están configuradas para que siempre se refiera a la vista, así que intente esto:

perpage: function(ev) { alert($(ev.target).text()); }

EDICIÓN REALMENTE TARDÍA : Probablemente quiera usar $(ev.currentTarget) . Ver dicussion en la respuesta de pawlik a continuación


Puedes obtener cualquier atributo que desees. ev funciona this :

perpage: function(ev) { console.log($(ev.target).attr(''name'')); }