我正在尝试将列表器挂钩到单选按钮更改。但由于某些原因,我无法让这个工作:
我得到的是:
HTML:
<input type="radio" name="hat" value="1">
<input type="radio" name="hat" value="2">
<input type="radio" name="hat" value="3">
我试图在我的视图中设置一个lister up渲染方法,如下所示:
this.listenTo(this, 'change input[type=radio]', this.changedRadio);
但是对单选按钮进行操作不会导致“changeRadio”被称为。
相反,我在控制台中得到了这个:
Unable to get property 'controlMap' of undefined or null reference
答案 0 :(得分:8)
在您的代码中,您正在视图中监听change
事件,而Backbone视图不会触发该事件。
尝试将其添加到此类视图事件中:
events: {
'change input[type=radio]': 'changedRadio'
},
changedRadio: function() {
...
},
render: function() {
...