模型数据不绑定到Backbone,Marionette中的html模板

时间:2016-04-14 13:32:30

标签: asp.net-mvc-4 backbone.js asp.net-web-api marionette

我是骨干和木偶的新手。 我的要求是, 我有一个几行的主网格。如果我从网格中选择一行,我需要获取详细信息并显示在同一页面上。 绑定网格工作正常。但是当我点击行数据时没有绑定到html模板。我无法找到问题。

以下是我的行详细信息的html模板

": "

骨干视图声明

<script id="selected-broker-details-tmpl" type="text/x-handlebars-template">

    <div id="pnl-broker-details" class="panel panel-default">

        <div class="panel-heading">

            Broker Details

        </div>

        <div id="broker-details-container" class="panel-body">

            <div class="col-md-6">

                <div class="form-group">

                    <label for="inputbrokerName" class="col-sm-3 control-label">BrokerName</label>

                    <div class="col-sm-9">

                        <input type="text" class="form-control" id="inputbrokerName" placeholder="Broker Name" value="{{BrokerName}}">

                    </div>

                </div>

            </div>

            <div class="col-md-6">

                <div class="form-group">

                    <label for="inputMnemonic" class="col-sm-3 control-label">Mnemonic</label>

                    <div class="col-sm-9">

                        <input type="text" class="form-control" id="inputMnemonic" placeholder="Mnemonic" value="{{Mnemonic}}">

                    </div>

                </div>

            </div>
    </div>
  </div>
</script>

模型和集合声明

App.Views.BrokerDetails = Backbone.View.extend({
            initialize: function () {
                this.listenTo(this.model, 'change', this.render);
            },
            el: '#details',
            template: brokerTemplates.BrokerDetailsTempalte,
            render: function () {
                this.$el.html(this.template({}));
            }
        });

点击主网格中的事件

var BrokderDetails = Backbone.Model.extend({
            BrokerId: null,
            BrokerName: null,
            Mnemonic: null,
            OASYSMnemonic: null
        });
var BrokerDetailsCollection = Backbone.Collection.extend({
            initialize: function (options) {
                this.model = BrokderDetails;
                this.url = '/api/BrokerSelections/SelectedBroker/';
            }
            ,
            setParam: function (str) {
                this.url = '/api/BrokerSelections/SelectedBroker/' + str;
                this.fetch();
            },
            parse: function (data) {
                return data;
            }
        });

现在有2个问题, 1.如果我在主网格中选择一行,则单击事件将触发2次 2.模型数据不绑定到html模板。我的意思是显示html模板,但在文本框中显示空值

0 个答案:

没有答案