Backbone Stickit删除了dinamically渲染的输入

时间:2016-12-22 09:38:29

标签: javascript backbone.js marionette

我用javascript渲染一些输入。例如:

render: function (id, val) {
            return '<input id="' + id + '" value="' + val + '"/>'
        }

之后我在视图渲染功能中调用this.stickit();,但它会删除渲染输入的值(我想这是因为模型是空的)。

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我找到了解决方法,但我不确定这是一个好方法。想法是禁用 来自模型的视图更新:

bindings: {
            '#id_of_input': {
                observe: 'name_of_attribute',
                updateView: false,
                setOptions: {
                    validate: true
                },
                events: ['change', 'blur', 'focus']
            }
 }

但是在我们渲染输入并用数据填充之后,我们必须在输入上触发'change'事件来更新有界模型属性。

这是一个很好的解决方案,因为我不会使用我的模型来更新视图。 但是如果我们想要双向绑定(模型&lt; - &gt;视图),我仍然不知道解决方案。