1

私はそれにリンクを持つ単純な Marionette.ItemView を持っています:

<a id="login-link">login</a>

しかし、ビューでイベントまたはトリガーをバインドすると、イベントは発生しません。

triggers:
    "click #login-link" : "login:clicked"

events:
    "click #login-link" : -> console.log "login clicked"

それでも、クラス名を使用してリンクを識別すると、次のいずれかが機能します。

<a class="login-link">login</a>

triggers:
    "click .login-link" : "login:clicked"

events:
    "click .login-link" : -> console.log "login clicked"

では、ID は Marionette.View でトリガーとイベントをバインドするための有効なセレクターではありませんか?

4

1 に答える 1

1

id は間違いなくマリオネットでイベントを発生させることができます。jsfiddle に小さなサンプルを置いたので、ご覧ください。エラーは別の場所にある可能性があります。

    var MainView = Marionette.ItemView.extend({
         template: "#sample-template", 
         events: {
             "click #fireEvent": "eventWithId"
         },

         eventWithId: function (e) {
            e.preventDefault();
            this.$el.find('#mytext').text('the id event changed my text!')
         }
    });

http://jsfiddle.net/rayweb_on/HTQGM/1/

于 2013-04-04T21:09:31.430 に答える