0

サーバーからデータを収集するバックボーン モデルがあります。

Job.Models.Response = Backbone.Model.extend({
    defaults: {
    'authStatus': false,
    'id': '1',
    'name': 'name',
    },

        urlRoot: '/static/js/public/json/'
    });

data-id = "id from /static/js/public/json/" のボタンがあります。

Job.Views.Response = Backbone.View.extend({
    el: '.ra-response-button',

    events: {
        "click": "load"
    },

    load: function () {

        var info = this.$el.data();

        this.model.set({ id: info.id});
        this.model.fetch();

        if (this.model.attributes.authStatus === false) {
            console.log('Register')
        }
        else {
            console.log('Unregister')
        }
    }

});

フェッチ後にモデルをコンソールログに記録すると、更新されませんが、データフェッチは成功します。ここではどのような問題が考えられますか?

ここでプラグインを初期化します。

var responseModel = new Job.Models.Response;
var response = new Job.Views.Response({ model: responseModel });
4

1 に答える 1

0

問題を解決します。最後に表示します。

    Job.Views.Response = Backbone.View.extend({
    el: '.ra-response-button',

    events: {
        "click": "load"
    },

    load: function () {
        var that = this;

        var info = that.$el.data();

        that.model.set({ id: info.id});
        that.model.fetch({
            success: function() {
                if (that.model.attributes.authStatus === true) {
                    new Job.Views.ResponseForm({ model: that.model })
                }

                else {
                    new Job.Views.ResponseAuth({ model : that.model })
                }
            },

            error: function() {
                alert('Error, repeat please.')
            }
        });
    }
});
于 2013-04-11T05:37:38.850 に答える