1

这是 jsfiddle ,我使用了与 Ajax 几乎相同的小提琴 My Fiddle ,这里是 Matt 的Stickit MultiSelect Select2 和一个数组 ,但在选择配置中添加了一个 ajax 属性。

单击结果,模型为模型 console.log(this.model.attributes)结果friends设置了一个未定义的属性:[1,2,undefined]。

change 事件只是调用 getVal 函数,它在这里返回一个未定义的值 `getVal: function($el) { var selected = $el.find('option:selected');

  if ($el.prop('multiple')) {
    return _.map(selected, function(el) {
      **return Backbone.$(el).data('stickit-bind-val');**
    });
  } else {
    return selected.data('stickit-bind-val');
  }
}`

我认为与添加选择选项的更新函数不同,单击结果不是添加选项或调用 addSelectOptions 函数。

但是当使用getVal:function($el,event,options){return $el.val(val);}返回值时,只返回值 [1,2,4]。但如果我有一个嵌套集合,它只返回值而不是整个对象。

需要从 AJAX 调用返回的整个对象并将其设置为选择时的模型属性。

4

0 回答 0