0

こんにちはstackoverflowers !!!

クリックイベント後のレンダービューに問題があります:

var TablesView = Backbone.View.extend({       

    events: {
      "click li" : "openMenuItem"
    },

    openMenuItem: function(e){
      currentLink = $(e.currentTarget);
      tableId = currentLink.data('table_id');
      app.navigate("table/" + tableId + "/menus");
      console.log("table/" + tableId + "/menus");
    },  

        initialize:function () {
        this.render();
    },
    render:function () {
        var that = this;
        var tables = new Tables();
        tables.fetch({
            success: function (tables) {
            var template = _.template($('#table-template').html(), {tables: tables.models});
              that.$el.html(template);
            }
        })
    }             
});

したがってli、アドレスバーにある右のアドレスをクリックすると、アドレスバーをクリックしてEnterキーを押した場合にのみ、ビューは変更されません...(私のURL /table/:id/menusは正しく機能しますが、そうではありませんテンプレートaリンクにある場合にのみクリックイベントで開きます)

回答ありがとうございます...よろしく

4

1 に答える 1

1

triggerオプションを渡すのを忘れました:

app.navigate("table/" + tableId + "/menus", true); // or
app.navigate("table/" + tableId + "/menus", {trigger:true});

もちろん、あなたappがのインスタンスである場合Backbone.Router:)

于 2013-09-02T14:46:25.703 に答える